[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