summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Levsen <holger@layer-acht.org>2012-12-17 14:44:11 +0100
committerHolger Levsen <holger@layer-acht.org>2012-12-17 14:44:11 +0100
commitf569f72e8a63d1a1498aa251a94fe8545123def7 (patch)
tree77e57df81e643e016e2bbea517e5f9afc54900eb
parent12e461735d0b829c2393d7adaa6cc31eeb3ded71 (diff)
downloadjenkins.debian.net-f569f72e8a63d1a1498aa251a94fe8545123def7.tar.xz
untested, unfinished debian packaging of this setup. and also to create a package to install to be able to debug jobs
-rw-r--r--INSTALL23
-rw-r--r--TODO5
-rw-r--r--debian/README.Debian6
-rw-r--r--debian/changelog6
-rw-r--r--debian/compat1
-rw-r--r--debian/control30
-rw-r--r--debian/copyright37
-rw-r--r--debian/docs3
-rw-r--r--debian/jenkins.debian.net-bin.docs4
-rw-r--r--debian/jenkins.debian.net-bin.install2
-rw-r--r--debian/jenkins.debian.net-bin.lintian-overrides3
-rw-r--r--debian/jenkins.debian.net-setup.install6
-rw-r--r--debian/jenkins.debian.net-setup.lintian-overrides3
-rw-r--r--debian/jenkins.debian.net.cron.d.ex4
-rw-r--r--debian/postinst.ex39
-rwxr-xr-xdebian/rules7
-rw-r--r--debian/source/format1
17 files changed, 180 insertions, 0 deletions
diff --git a/INSTALL b/INSTALL
index 436e7304..b7d816e0 100644
--- a/INSTALL
+++ b/INSTALL
@@ -114,3 +114,26 @@ Currently only the configuration is backed up, but neither the jenkins results n
I've cloned these two git repos on my desktop and manually run `git pull`. This is certainly not ideal but good enough to re-setup the system anytime, which is something.
+== Debugging jobs without jenkins
+
+*FIXME*: To debug certain jobs, a jenkins setup is actually not needed. Make this easy and describe here.
+
+*This is work in progress too and is not done yet!*
+
+FIXME: Describe which packages need to be installed, too. No, don't. Package it properly. update_jdn.sh is a hack and needs to die.
+FIXME: svn/git using test-scripts need to learn checkout out - currently this is always done by jenkins.
+
+=== Debugging g-i-installation jobs
+
+as user run:
+
+----
+mkdir workspace ; cd workspace # test-script should check if they are in a directory called workspace and if not, mkdir it and cd into it.
+/srv/jenkins/bin/cd_tester.sh 2 squeeze-test-debian-edu-standalone 20 http://ftp.skolelinux.org/cd-squeeze-test-amd64-i386-netinst/debian-edu-amd64-i386-NETINST-1.iso
+
+----
+See the *fourth line* on *any* log to find out how to debug any job. Point this out at the end of any log.
+
+When packaging this, two packages should be created:
+- jenkins.debian.net - turn a machine into jenkins.$localdomain (not policy complient package), probably jenkins.d.n-seteup or such is a better package name
+- jenkins.d.n-debug - or such to set an environment to run specific jobs easily
diff --git a/TODO b/TODO
index 93011c77..585b406a 100644
--- a/TODO
+++ b/TODO
@@ -22,6 +22,11 @@ See link:http://jenkins.debian.net/userContent/about.html["about jenkins.debian.
* put kgb-client.conf in git and sed passwords from filesystem into it...
* push jenkins munin plugins upstream
+== 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...
+
=== jenkins-job-builder related
* support for gitweb in jobs
diff --git a/debian/README.Debian b/debian/README.Debian
new file mode 100644
index 00000000..d3cf6fbf
--- /dev/null
+++ b/debian/README.Debian
@@ -0,0 +1,6 @@
+jenkins.debian.net packaging
+----------------------------
+
+This has just begun and is not done properly yet.
+
+ -- Holger Levsen <holger@debian.org> Mon, 17 Dec 2012 14:22:51 +0100
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 00000000..32de6ffe
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,6 @@
+jenkins.debian.net (0.1) experimental; urgency=low
+
+ * untested, unfinished...
+ * Initial release.
+
+ -- Holger Levsen <holger@debian.org> Mon, 17 Dec 2012 14:22:51 +0100
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 00000000..ec635144
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644
index 00000000..29471743
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,30 @@
+Source: jenkins.debian.net
+Section: devel
+Priority: extra
+Maintainer: Holger Levsen <holger@debian.org>
+Build-Depends: debhelper (>= 9.20120419~)
+Standards-Version: 3.8.4
+Homepage: http://jenkins.debian.net/userContent/about.html
+#Vcs-Git: git://git.debian.org/collab-maint/jenkins.debian.net.git
+#Vcs-Browser: http://git.debian.org/?p=collab-maint/jenkins.debian.net.git;a=summary
+
+Package: jenkins.debian.net-setup
+Architecture: all
+Depends: ${misc:Depends}, jenkins.debian.net-bin,
+ vim, screen, less, etckeeper, moreutils, curl, mtr-tiny, dstat, devscripts, bash-completion, shorewall, shorewall6, cron-apt, apt-listchanges, munin, calamaris, visitors, procmail, libjson-rpc-perl, libfile-touch-perl, zutils, ip2host,
+ build-essential, python-setuptools
+Recommends: jenkins-job-builder
+Description: Stuff to setup a jenkins.debian.net instance
+ Scripts and configuration files for running jenkins.debian.net, including
+ the ability to turn any machine into jenkins.$localdomain.
+ .
+ On installation of the package no adminstrative changes will be made the
+ system. To do so, run jenkins.debian.net-setup as root.
+
+Package: jenkins.debian.net-bin
+Architecture: all
+Depends:, ${misc:Depends},, debootstrap, sudo, figlet, graphviz, apache2, python-yaml, python-pip, mr, subversion, subversion-tools, vnstat, webcheck, poxml, qemu, vncsnapshot, imagemagick, ffmpeg2theora, python-twisted, python-imaging
+Description: Stuff to make jenkins.debian.net run and debug
+ Scripts and configuration files for running and debugging jobs run on
+ jenkins.debian.net.
+
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 00000000..b5529ab6
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,37 @@
+This work was packaged for Debian by:
+
+ Holger Levsen <holger@debian.org> on Tue, 27 Nov 2012 23:54:51 +0100
+
+It was downloaded from:
+
+ <url://example.com>
+
+Upstream Author(s):
+
+ <put author's name and email here>
+ <likewise for another author>
+
+Copyright:
+
+ <Copyright (C) YYYY Firstname Lastname>
+ <likewise for another author>
+
+License:
+
+ <Put the license of the package here indented by 4 spaces>
+
+The Debian packaging is:
+
+ Copyright (C) 2012 Holger Levsen <holger@debian.org>
+
+# Please chose a license for your packaging work. If the program you package
+# uses a mainstream license, using the same license is the safest choice.
+# Please avoid to pick license terms that are more restrictive than the
+# packaged work, as it may make Debian's contributions unacceptable upstream.
+# If you just want it to be GPL version 3, leave the following lines in.
+
+and is licensed under the GPL version 3,
+see "/usr/share/common-licenses/GPL-3".
+
+# Please also look if there are files or directories which have a
+# different copyright/license attached and list them here.
diff --git a/debian/docs b/debian/docs
new file mode 100644
index 00000000..f26bcee2
--- /dev/null
+++ b/debian/docs
@@ -0,0 +1,3 @@
+README
+TODO
+INSTALL
diff --git a/debian/jenkins.debian.net-bin.docs b/debian/jenkins.debian.net-bin.docs
new file mode 100644
index 00000000..57455abc
--- /dev/null
+++ b/debian/jenkins.debian.net-bin.docs
@@ -0,0 +1,4 @@
+INSTALL
+LICENSE
+README
+TODO
diff --git a/debian/jenkins.debian.net-bin.install b/debian/jenkins.debian.net-bin.install
new file mode 100644
index 00000000..7445c3f3
--- /dev/null
+++ b/debian/jenkins.debian.net-bin.install
@@ -0,0 +1,2 @@
+bin /srv/jenkins/
+d-i-preseed-cfgs /var/lib/jenkins/userContent/
diff --git a/debian/jenkins.debian.net-bin.lintian-overrides b/debian/jenkins.debian.net-bin.lintian-overrides
new file mode 100644
index 00000000..cec88553
--- /dev/null
+++ b/debian/jenkins.debian.net-bin.lintian-overrides
@@ -0,0 +1,3 @@
+jenkins.debian.net-bin binary: new-package-should-close-itp-bug
+jenkins.debian.net-bin binary: dir-or-file-in-srv srv/jenkins/*
+jenkins.debian.net-bin binary: wrong-bug-number-in-closes l4:#nnnn
diff --git a/debian/jenkins.debian.net-setup.install b/debian/jenkins.debian.net-setup.install
new file mode 100644
index 00000000..cd2305b7
--- /dev/null
+++ b/debian/jenkins.debian.net-setup.install
@@ -0,0 +1,6 @@
+etc /srv/jenkins/
+job-cfg /srv/jenkins/
+logparse /srv/jenkins/
+procmailrc /var/lib/jenkins/
+update_jdn.sh /srv/jenkins/bin
+userContent /var/lib/jenkins/
diff --git a/debian/jenkins.debian.net-setup.lintian-overrides b/debian/jenkins.debian.net-setup.lintian-overrides
new file mode 100644
index 00000000..9429bb44
--- /dev/null
+++ b/debian/jenkins.debian.net-setup.lintian-overrides
@@ -0,0 +1,3 @@
+jenkins.debian.net-setup binary: new-package-should-close-itp-bug
+jenkins.debian.net-setup binary: dir-or-file-in-srv srv/jenkins/*
+jenkins.debian.net-setup binary: wrong-bug-number-in-closes l4:#nnnn
diff --git a/debian/jenkins.debian.net.cron.d.ex b/debian/jenkins.debian.net.cron.d.ex
new file mode 100644
index 00000000..594f26c0
--- /dev/null
+++ b/debian/jenkins.debian.net.cron.d.ex
@@ -0,0 +1,4 @@
+#
+# Regular cron jobs for the jenkins.debian.net package
+#
+0 4 * * * root [ -x /usr/bin/jenkins.debian.net_maintenance ] && /usr/bin/jenkins.debian.net_maintenance
diff --git a/debian/postinst.ex b/debian/postinst.ex
new file mode 100644
index 00000000..87c8673b
--- /dev/null
+++ b/debian/postinst.ex
@@ -0,0 +1,39 @@
+#!/bin/sh
+# postinst script for jenkins.debian.net
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+# * <postinst> `configure' <most-recently-configured-version>
+# * <old-postinst> `abort-upgrade' <new version>
+# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+# <new-version>
+# * <postinst> `abort-remove'
+# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+# <failed-install-package> <version> `removing'
+# <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+ configure)
+ ;;
+
+ abort-upgrade|abort-remove|abort-deconfigure)
+ ;;
+
+ *)
+ echo "postinst called with unknown argument \`$1'" >&2
+ exit 1
+ ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 00000000..571f404a
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,7 @@
+#!/usr/bin/make -f
+
+# Uncomment this to turn on verbose mode.
+export DH_VERBOSE=1
+
+%:
+ dh $@
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 00000000..d3827e75
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+1.0