[Pkg-debile-commits] [debile-slave] 78/100: Add some documentation and TODO.
Sylvestre Ledru
sylvestre at alioth.debian.org
Mon Aug 19 14:53:13 UTC 2013
This is an automated email from the git hooks/post-receive script.
sylvestre pushed a commit to branch master
in repository debile-slave.
commit da9ff576da60b5b4e82d0b5cf1d83d0bc72889b8
Author: Léo Cavaillé <leo at cavaille.net>
Date: Sat Jul 6 02:25:54 2013 +0200
Add some documentation and TODO.
Indicate the different options in ethel config file.
Ship some instructions/ideas about packaging/installing ethel.
---
PACKAGING | 139 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ethel/utils.py | 2 +
skel/ethel.ini | 29 ++++++++----
3 files changed, 162 insertions(+), 8 deletions(-)
diff --git a/PACKAGING b/PACKAGING
new file mode 100644
index 0000000..32f8e4a
--- /dev/null
+++ b/PACKAGING
@@ -0,0 +1,139 @@
+What is required to install ethel.
+So that may become some hints to create the package.
+This not an "INSTALL" file as I hope we'll never have to install the system
+like this...
+And I use virtualenvwrapper here for my sanity, preferably replaced in
+production by installing the debian packages instead of using pip.
+
+System : fresh wheezy, up to date on 04 Jul 2013
+
+(root)
+* Create a dedicated user in the machine
+ adduser --disabled-password --disabled-login --gecos "Ethel builder,,," --home /srv/ethel ethel
+
+(ethel)
+* Fetch the repo of ethel
+ cd ~ && git clone https://github.com/paultag/ethel.git
+
+(root)
+* Create the environment we will work in :
+ apt-get install virtualenvwrapper
+
+(root)
+* Additional deps :
+ apt-get install dput devscripts lintian
+
+(ethel)
+* Reconnect as ethel for virtualenvwrapper hooks
+ mkvirtualenv ethel && workon ethel
+
+(ethel) virtualenv=ethel
+* Install ethel dependancies
+ cd ~ && git clone https://github.com/fedora-static-analysis/firehose.git
+ cd ~/firehose
+ pip install -r requirements.txt
+ python setup.py install
+ pip install configparser
+ pip install python-debian
+ pip install chardet
+ pip install schroot
+
+
+(ethel) virtualenv=ethel
+* Install ethel
+ python setup.py develop
+
+(root)
+* Install the config file
+ cp ~/ethel/skel/ethel.ini /etc/ethel.ini
+ chown ethel:ethel /etc/ethel.ini
+
+(ethel)
+* Generate a new auto GPG key
+ gpg --gen-key (without passphrase)
+
+* Configure the conf file !
+
+SAMPLE /etc/ethel.ini :
+###############################################################
+[host]
+# The address or IP to contact lucy
+host=debian-manager.via.ecp.fr
+# The port to contact lucy
+port=20017
+
+# Authentication to lucy
+user=debian-builder1
+password=password
+
+# Where to dput, must be an entry of the ~/.dput.cf
+dput-host=debian-manager
+# Where to send the logs, the same host as dput, same path without incoming/
+copy=scp {src} lucy at debian-manager.via.ecp.fr:{dest}
+
+# The GPG key of the builder machine
+# `gpg --list-secret-keys --fingerprint | grep fingerprint | cut -d'=' -f2 | tr -d ' '`
+gpg=D0FEF8101640900183B8C37A42FE51628224AAA3
+# The keyring where this key is
+keyring=/srv/ethel/.gnupg/secring.gpg
+
+# The builder capabilities
+suites=unstable
+arches=amd64,all
+all-arch=amd64
+###############################################################
+
+* You must export the GPG key and import it in lucy keyring
+
+(ethel)
+* In the ~/dput.cf I set up debian-manager target
+
+SAMPLE ~/dput.cf :
+###############################################################
+[debian-manager]
+fqdn=debian-manager.via.ecp.fr
+login=lucy
+incoming=/srv/local-mirror/incoming
+method=scp
+###############################################################
+
+(ethel)
+* For dput-ing and scp-ing we use SSH so setup auto SSH key
+between my builder and the manager
+ ssh-keygen -t ecdsa -b 521 -N ''
+* Copy the pubkey to lucy at debian-manager (e.g.)
+* Connect to accept server host key
+
+
+(root)
+* Create a schroot file and add ethel to sbuild group
+ apt-get install sbuild
+ mkdir -p /var/lib/ethel/chroots
+ /srv/ethel/ethel/bin/create-schroot-file unstable
+* Then we copy the configuration in /etc/schroot/chroot.d/unstable-amd64
+Yes, the name matters.
+
+SAMPLE /etc/schroot/chroot.d/unstable-amd64 :
+###############################################################
+[unstable-amd64]
+type=file
+description=Ethel Chroot
+file=/var/lib/ethel/chroots/unstable.tar.gz
+groups=root,sbuild
+root-groups=root,sbuild
+source-groups=root,sbuild
+source-root-groups=root,sbuild
+###############################################################
+
+(root)
+* Add your ethel user to the sbuild group
+ usermod -a -G sbuild ethel
+* Reconnect that the modification is taken into account
+
+* Generate a key for sbuild local archive
+ sbuild-update --keygen
+
+* Install what is required for checkers
+ # FIXME : only in experimental :/ not possible on wheezy with dependancies
+ * Install lintian4py
+
diff --git a/ethel/utils.py b/ethel/utils.py
index a1587c6..301c2aa 100644
--- a/ethel/utils.py
+++ b/ethel/utils.py
@@ -92,6 +92,8 @@ def safe_run(cmd, expected=0):
def dget(url):
+ # TODO : add some logging here, useful to setup correctly the
+ # "public" parameter in lucy
safe_run(["dget", "-u", "-d", url])
diff --git a/skel/ethel.ini b/skel/ethel.ini
index f874186..3ed28aa 100644
--- a/skel/ethel.ini
+++ b/skel/ethel.ini
@@ -1,12 +1,25 @@
[host]
+# The address or IP to contact lucy
+host=debian-manager.via.ecp.fr
+# The port to contact lucy
port=20017
-host=localhost
-user=loki
+
+# Authentication to lucy
+user=debian-builder1
password=password
-dput-host=lucy
-gpg=C1C274ACEA4F7879378DC6960943D06F6CA9F2D8
-keyring=/var/lib/ethel/keyring
+
+# Where to dput, must be an entry of the ~/.dput.cf
+dput-host=debian-manager
+# Where to send the logs, the same host as dput, same path without incoming/
+copy=scp {src} lucy at debian-manager.via.ecp.fr:{dest}
+
+# The GPG key of the builder machine
+# `gpg --list-secret-keys --fingerprint | grep fingerprint | cut -d'=' -f2 | tr -d ' '`
+gpg=D0FEF8101640900183B8C37A42FE51628224AAA3
+# The keyring where this key is
+keyring=/srv/ethel/.gnupg/secring.gpg
+
+# The builder capabilities
suites=unstable
-#, null
-arches=amd64
-#, null
+arches=amd64,all
+all-arch=amd64
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-debile/debile-slave.git
More information about the Pkg-debile-commits
mailing list