NOM
cowpoke - Construire un paquet source Debian dans une instance de
cowbuilder distante
SYNOPSIS
cowpoke [options] paquet.dsc
Envoyer un paquet source Debian un hte cowbuilder et construire le
paquet. Le paquet rsultant peut galement tre sign et envoy dans une
file d'attente.
OPTIONS
Les options suivantes sont disponibles :
--arch=arch
Indiquer la ou les architectures Debian pour lesquelles le
paquet doit tre construit. Une liste d'architectures spares par
des espaces peut tre utilise pour construire le paquet pour
toutes ces architectures en une seule passe. Les noms
d'architecture supports sont ceux renvoys par
dpkg-architecture(1) pour DEB_BUILD_ARCH.
--dist=dist
Indiquer la ou les distributions Debian pour lesquelles le
paquet doit tre construit. Une liste de distributions spares par
des espaces peut tre utilise pour construire le paquet pour
toutes ces distributions en une seule passe. Des noms de code
(comme sid ou lenny) ou des noms de distribution (comme unstable
ou experimental) peuvent tre utiliss, mais vous devriez toujours
utiliser un type de noms ou l'autre parce que ce nom est utilis
pour les chemins de fichier et pour trouver les anciens paquets
utiliss pour les rapports de comparaison.
--buildd=hte
Indiquer l'hte distant sur lequel se fera la construction.
--buildd-user=nom
Indiquer l'utilisateur distant utiliser pour la construction.
--create
Crer la racine cowbuilder distante si elle n'existe toujours
pas. Si cette option n'est pas fournie, une distribution ou
architecture (indiques par --dist ou --arch) qui n'aurait pas de
racine cowbuilder sera considr comme une erreur.
--dpkg-opts='opt1 opt2 ...'
Indiquer des options supplmentaires fournir
dpkg-buildpackage(1). les diffrentes options sont spares par des
espaces. Ceci remplacera toute option fournie par la variable
DEBBUILDOPTS du fichier pbuilderrc de la machine de
construction.
--help Afficher un bref rsum des options disponibles et de la
configuration en cours.
--version
Afficher les informations sur la version.
OPTIONS DE CONFIGURATION
Quand cowpoke est excut, les options de configuration suivantes sont
lues dans le fichier de configuration global, celui de l'utilisateur et
du projet, s'ils sont prsents. Les chemins peuvent tre indiqus de faon
absolue ou relative (les chemins tant alors relatifs au rpertoire
personnel de l'utilisateur BUILDD_USER). Les chemins tant gnralement
fournis entre guillemets, l'expansion des tildes ne sera pas ralise.
Valeurs par dfaut globales
Elles s'appliquent chaque architecture et distribution lors d'une
invocation de cowpoke.
BUILDD_HOST
L'adresse rseau ou le nom compltement qualifi (FQDN) de la
machine de construction o cowbuilder est configur. Elle peut tre
modifie avec l'option en ligne de commande --buildd.
BUILDD_USER
Le nom de l'utilisateur, non privilgi, sur la machine de
construction. Le nom par dfaut est le nom de l'utilisateur local
qui excute cowpoke (ou le nom d'utilisateur prcis dans la
configuration ssh pour BUILDD_HOST), et le nom fournit par la
variable d'environnement peut tre remplac avec l'option
--buildd-user en ligne de commande.
BUILDD_ARCH
La ou les architectures Debian pour lesquelles il faut
construire les paquets. Cela doit correspondre la valeur de
DEB_BUILD_ARCH du chroot de construction utilis. La valeur par
dfaut est l'architecture de la machine sur laquelle cowpoke est
excute, et l'architecture peut tre remplace avec l'option --arch
en ligne de commande. Une liste d'architectures spares par des
espaces (il peut tre ncessaire de fournir le tout entre
guillemets) peut tre utilise pour construire les paquets pour
toutes ces architectures en une seule passe.
BUILDD_DIST
La ou les distributions Debian pour lesquelles il faut
construire les paquets. Une liste de distributions spares par
des espaces (il peut tre ncessaire de fournir le tout entre
guillemets) peut tre utilise pour construire les paquets pour
toutes ces architectures en une seule passe. La ou les
distributions peuvent tre remplaces avec l'option --dist en
ligne de commande.
INCOMING_DIR
Le chemin du rpertoire sur la machine de construction o sont
placs initialement les paquets source. Il doit tre accessible en
criture par l'utilisateur BUILDD_USER.
PBUILDER_BASE
La racine du systme de fichiers pour tous les fichiers COW et
les fichiers rsultats. Des sous-rpertoires spcifiques aux
architectures et aux distributions seront normalement crs sous
cette racine. Le cache d'apt et les rpertoire temporaire de
construction se trouveront galement sous ce chemin.
SIGN_KEYID
Si cette option est active, elle doit contenir l'identifiant de
la cl GPG
fournir debsign(1) si les paquets doivent tre signs sur la
machine distante. Il vous sera demand si vous souhaitez signer
les paquets aprs que toutes les constructions sont finies. Si
cette option n'est pas active ou si elle contient une chane
vide, aucune tentative de signature ne sera effectue.
UPLOAD_QUEUE
Si cette option est active, elle doit contenir une indication
d'hte pour dput(1) qui sera utilise pour envoyer les paquets
aprs qu'ils ont t signs. Il vous sera demand de confirmer si
vous souhaitez envoyer les paquets aprs qu'ils ont t signs. Si
cette option n'est pas active ou si elle contient une chane
vide, aucune tentative d'envoi ne sera effectue. Si SIGN_KEYID
n'est pas active, cette option sera compltement ignore.
BUILDD_ROOTCMD
La commande utiliser pour obtenir les privilges root sur la
machine distante de construction. Si elle n'est pas dfinie, la
commande par dfaut est sudo(8). Elle n'est ncessaire que pour
appeler cowbuilder et lui permettre d'entrer dans son chroot.
Vous pouvez donc n'autoriser cet utilisateur utiliser des
privilges supplmentaires que pour l'excution de cette commande.
La ligne suivante dans sudoers permettra d'appeler cowbuilder
sans avoir forunir de mot de passe :
utilisateur ALL = NOPASSWD: /usr/sbin/cowbuilder
Autrement, vous pouvez utiliser ssh avec une cl ou tout autre
mcanisme correspondant votre politique locale. su -c n'est pas
vraiment utilisable ici parce qu'il ncessite de placer des
guillemets autour, contrairement aux autres.
DEBOOTSTRAP
L'utilitaire utiliser pour crer une nouvelle racine de
construction. Les possibilits sont debootstrap ou cdebootstrap.
Options spcifiques des architectures ou distributions
Ce sont des variables de la forme $arch_$dist_VAR qui ne s'appliquent
qu' une cible de construction spcifique une architecture et une
distribution.
arch_dist_RESULT_DIR
Le chemin du rpertoire de la machine de construction o les
paquets rsultants (sources et binaires) seront trouvs, et o les
versions ultrieures des paquets ayant t prcdemment construits
pourront tre trouves. Si des anciens paquets sont trouvs,
debdiff sera utilis pour comparer le nouveau paquet avec la
version prcdente une fois la construction finie, et le rsultat
se trouvera dans le journal de construction. Les fichiers du
rpertoire doivent tre lisibles par BUILDD_USER pour les
vrifications par lintian(1) et debdiff(1) ainsi que pour les
envois par dput(1). Si cette option n'est pas dfinie pour
certaines combinaisons d'architectures et de distributions,
alors le chemin par dfaut sera $PBUILDER_BASE/$arch/$dist/result
arch_dist_BASE_PATH
Le rpertoire ou les fichiers COW matres se trouvent (ou l o ils
sont crs si l'option en ligne de commande --create est utilise).
Si cette option n'est pas dfinie pour une combinaison
d'architecture et de distribution, alors le chemin par dfaut est
$PBUILDER_BASE/$arch/$dist/base.cow
FICHIERS DE CONFIGURATION
/etc/cowpoke.conf
Options de configuration globales. Elles remplaceront les
valeurs par dfaut codes en dur.
~/.cowpoke
Options de configuration de l'utilisateur. Elles remplaceront
les valeurs des options de configuration globales.
.cowpoke
Options de configuration du projet. Elles surchargeront toute
option de configuration globale ou de l'utilisateur si cowpoke
est appel depuis le rpertoire o se trouve le fichier.
Si la variable d'environnement COWPOKE_CONF est dfinie, elle
indique un fichier de configuration supplmentaire qui remplacera
tous les autres. Les options utilises explicitement sur la ligne
de commande remplacent les options provenant des fichiers de
configuration.
CONFIGURATION DE COWBUILDER
Il n'y a rien de particulier faire pour configurer une instance de
cowbuilder pour qu'elle puisse tre utilise avec cowpoke. Crer la
simplement telle que vous en avez besoin avec cowbuilder --create en
suivant la documentation de cowbuilder, puis configurez cowpoke avec
les informations sur l'utilisateur, l'architecture et le chemin
ncessaire pour y accder sur les machines o vous souhaitez l'appeler (ou
configurez cowpoke avec les informations sur le chemin, l'architecture
et la distribution et fournissez lui l'option --create lors du premier
appel). L'hte de construction sur lequel cowbuilder tourne n'a pas
besoin que cowpoke soit install localement.
La machine de construction doit avoir les paquets lintian et devscripts
installs pour les vrifications en fin de construction. Une fois la
construction finie, un journal et les rsultats des tests automatiques
seront enregistrs dans INCOMING_DIR. Si vous souhaitez envoyer des
paquets signs, dput(1) devra galement tre install sur la machine de
construction et devra tre configur pour utiliser l'alias indiqu par
UPLOAD_QUEUE.
L'utilisateur qui excute cowpoke doit avoir un accs ssh la machine de
construction en tant que BUILDD_USER. Cet utilisateur doit pouvoir
excuter cowbuilder est tant que root en utilisant BUILDD_ROOTCMD. Les
cls pour les signatures n'ont pas ncessairement tre installes sur la
machine de construction (et elles seront ignores si elles le sont). Si
un paquet est sign, les cls seront ncessaires sur la machine qui excute
cowpoke.
Quand cowpoke est appel, il cherche d'abord mettre jour l'image
cowbuilder si cela n'a pas dj t fait le mme jour. Cette vrification se
base sur la prsence d'un fichier
cowbuilder-$arch-$dist-update-log-$date dans le rpertoire INCOMING_DIR.
Vous pouvez dplacer, renommer ou toucher ce fichier si vous souhaitez
que l'image soit mise jour plus ou moins souvent. Son contenu liste
les sorties de cowbuilder pendant la mise jour (ou la cration) de la
racine de construction.
NOTES
Puisque cowbuilder cre un chroot, et qu'il faut pour cela tre root,
cowpoke ncessite galement certains des privilges de root. Et toutes les
horreurs qui peuvent arriver pourront vous arriver un jour. cowbuilder
a t connu pour accidentellement craser des systmes de fichiers monts
avec l'option bind en dehors de son chroot, et pire encore peut
arriver. Soyez prudents, conservez des sauvegardes de ce que vous ne
souhaitez pas perdre sur vos machines de construction et utilisez
cowpoke pour isoler tous ces problmes sur une machine qui n'est pas
votre machine de dveloppement avec vos quelques heures de travail non
committ.
VOIR AUSSI
cowbuilder(1), pbuilder(1), ssh-agent(1), sudoers(5).
AUTEUR
cowpoke a t crit par Ron <ron@debian.org>.
TRADUCTION
Ce document est une traduction, ralise par Nicolas Franois, Guillaume
Delacour, Cyril Brulebois et Thomas Huriaux.
L'quipe de traduction a fait le maximum pour raliser une adaptation
franaise de qualit.
La version anglaise la plus jour de ce document est toujours
consultable en ajoutant l'option -L C la commande man.
N'hsitez pas signaler l'auteur ou la liste de traduction
<debian-l10-french@lists.debian.org>, selon le cas, toute erreur dans
cette page de manuel.
28 avril 2008