Provided by:
devscripts_2.10.61ubuntu5_i386 
NOM
cowpoke - Construire un paquet source Debian dans une instance de
cowbuilder distante
SYNOPSIS
cowpoke [options] paquet.dsc
DESCRIPTION
Envoyer un paquet source Debian à un hôte cowbuilder et construire le
paquet. Le paquet résultant 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 séparées
par des espaces peut être utilisée pour construire le paquet
pour toutes ces architectures en une seule passe. Les noms
d’architecture supportés sont ceux renvoyés 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 séparées
par des espaces peut être utilisée 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 utilisés, 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 utilisés pour les rapports de comparaison.
--buildd=hôte
Indiquer l’hôte distant sur lequel se fera la construction.
--buildd-user=nom
Indiquer l’utilisateur distant à utiliser pour la construction.
--create
Créer la racine cowbuilder distante si elle n’existe toujours
pas. Si cette option n’est pas fournie, une distribution ou
architecture (indiquées par --dist ou --arch) qui n’aurait pas
de racine cowbuilder sera considéré comme une erreur.
--dpkg-opts=’opt1 opt2 ...’
Indiquer des options supplémentaires à fournir Ã
dpkg-buildpackage(1). les différentes options sont séparées par
des espaces. Ceci remplacera toute option fournie par la
variable DEBBUILDOPTS du fichier pbuilderrc de la machine de
construction.
--help Afficher un bref résumé des options disponibles et de la
configuration en cours.
--version
Afficher les informations sur la version.
OPTIONS DE CONFIGURATION
Quand cowpoke est exécuté, les options de configuration suivantes sont
lues dans le fichier de configuration global, celui de l’utilisateur et
du projet, s’ils sont présents. Les chemins peuvent être indiqués de
façon absolue ou relative (les chemins étant alors relatifs au
répertoire personnel de l’utilisateur BUILDD_USER). Les chemins étant
généralement fournis entre guillemets, l’expansion des tildes ne sera
pas réalisée.
Valeurs par défaut globales
Elles s’appliquent à chaque architecture et distribution lors d’une
invocation de cowpoke.
BUILDD_HOST
L’adresse réseau ou le nom complètement qualifié (FQDN) de la
machine de construction où cowbuilder est configuré. Elle peut
être modifiée avec l’option en ligne de commande --buildd.
BUILDD_USER
Le nom de l’utilisateur, non privilégié, sur la machine de
construction. Le nom par défaut est le nom de l’utilisateur
local qui exécute cowpoke (ou le nom d’utilisateur précisé 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
défaut est l’architecture de la machine sur laquelle cowpoke est
exécutée, et l’architecture peut être remplacée avec l’option
--arch en ligne de commande. Une liste d’architectures séparées
par des espaces (il peut être nécessaire de fournir le tout
entre guillemets) peut être utilisée 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 séparées par
des espaces (il peut être nécessaire de fournir le tout entre
guillemets) peut être utilisée pour construire les paquets pour
toutes ces architectures en une seule passe. La ou les
distributions peuvent être remplacées avec l’option --dist en
ligne de commande.
INCOMING_DIR
Le chemin du répertoire sur la machine de construction où sont
placés initialement les paquets source. Il doit être accessible
en écriture par l’utilisateur BUILDD_USER.
PBUILDER_BASE
La racine du système de fichiers pour tous les fichiers COW et
les fichiers résultats. Des sous-répertoires spécifiques aux
architectures et aux distributions seront normalement créés sous
cette racine. Le cache d’apt et les répertoire temporaire de
construction se trouveront également sous ce chemin.
SIGN_KEYID
Si cette option est activée, elle doit contenir l’identifiant de
la clé GPG à fournir à debsign(1) si les paquets doivent être
signés sur la machine distante. Il vous sera demandé si vous
souhaitez signer les paquets après que toutes les constructions
sont finies. Si cette option n’est pas activée ou si elle
contient une chaîne vide, aucune tentative de signature ne sera
effectuée.
UPLOAD_QUEUE
Si cette option est activée, elle doit contenir une indication
d’hôte pour dput(1) qui sera utilisée pour envoyer les paquets
après qu’ils ont été signés. Il vous sera demandé de confirmer
si vous souhaitez envoyer les paquets après qu’ils ont été
signés. Si cette option n’est pas activée ou si elle contient
une chaîne vide, aucune tentative d’envoi ne sera effectuée. Si
SIGN_KEYID n’est pas activée, cette option sera complètement
ignorée.
BUILDD_ROOTCMD
La commande à utiliser pour obtenir les privilèges root sur la
machine distante de construction. Si elle n’est pas définie, la
commande par défaut est sudo(8). Elle n’est nécessaire que pour
appeler cowbuilder et lui permettre d’entrer dans son chroot.
Vous pouvez donc n’autoriser cet utilisateur à utiliser des
privilèges supplémentaires que pour l’exécution 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
mécanisme correspondant à votre politique locale. su -c n’est
pas vraiment utilisable ici parce qu’il nécessite de placer des
guillemets autour, contrairement aux autres.
DEBOOTSTRAP
L’utilitaire à utiliser pour créer une nouvelle racine de
construction. Les possibilités sont debootstrap ou cdebootstrap.
Options spécifiques à des architectures ou distributions
Ce sont des variables de la forme $arch_$dist_VAR qui ne s’appliquent
qu’à une cible de construction spécifique à une architecture et à une
distribution.
arch_dist_RESULT_DIR
Le chemin du répertoire de la machine de construction où les
paquets résultants (sources et binaires) seront trouvés, et où
les versions ultérieures des paquets ayant été précédemment
construits pourront être trouvées. Si des anciens paquets sont
trouvés, debdiff sera utilisé pour comparer le nouveau paquet
avec la version précédente une fois la construction finie, et le
résultat se trouvera dans le journal de construction. Les
fichiers du répertoire doivent être lisibles par BUILDD_USER
pour les vérifications par lintian(1) et debdiff(1) ainsi que
pour les envois par dput(1). Si cette option n’est pas définie
pour certaines combinaisons d’architectures et de distributions,
alors le chemin par défaut sera
$PBUILDER_BASE/$arch/$dist/result
arch_dist_BASE_PATH
Le répertoire ou les fichiers COW maîtres se trouvent (ou là où
ils sont créés si l’option en ligne de commande --create est
utilisée). Si cette option n’est pas définie pour une
combinaison d’architecture et de distribution, alors le chemin
par défaut est $PBUILDER_BASE/$arch/$dist/base.cow
FICHIERS DE CONFIGURATION
/etc/cowpoke.conf
Options de configuration globales. Elles remplaceront les
valeurs par défaut codées 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 répertoire où se trouve le fichier.
Si la variable d’environnement COWPOKE_CONF est définie, elle
indique un fichier de configuration supplémentaire qui
remplacera tous les autres. Les options utilisées 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 utilisée avec cowpoke. Créer 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
nécessaire pour y accéder 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’hôte 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
installés pour les vérifications en fin de construction. Une fois la
construction finie, un journal et les résultats des tests automatiques
seront enregistrés dans INCOMING_DIR. Si vous souhaitez envoyer des
paquets signés, 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 exécute cowpoke doit avoir un accès ssh à la machine
de construction en tant que BUILDD_USER. Cet utilisateur doit pouvoir
exécuter cowbuilder est tant que root en utilisant BUILDD_ROOTCMD. Les
clés pour les signatures n’ont pas nécessairement à être installées sur
la machine de construction (et elles seront ignorées si elles le sont).
Si un paquet est signé, les clés seront nécessaires sur la machine qui
exécute cowpoke.
Quand cowpoke est appelé, il cherche d’abord à mettre à jour l’image
cowbuilder si cela n’a pas déjà été fait le même jour. Cette
vérification se base sur la présence d’un fichier
cowbuilder-$arch-$dist-update-log-$date dans le répertoire
INCOMING_DIR. Vous pouvez déplacer, 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
création) de la racine de construction.
NOTES
Puisque cowbuilder crée un chroot, et qu’il faut pour cela être root,
cowpoke nécessite également certains des privilèges de root. Et toutes
les horreurs qui peuvent arriver pourront vous arriver un jour.
cowbuilder a été connu pour accidentellement écraser des systèmes de
fichiers montés 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 problèmes sur une machine qui
n’est pas votre machine de développement 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, réalisée par Nicolas François,
Guillaume Delacour, Cyril Brulebois et Thomas Huriaux.
L’équipe de traduction a fait le maximum pour réaliser une adaptation
française de qualité.
La version anglaise la plus à jour de ce document est toujours
consultable en ajoutant l’option « -L C » à la commande man.
N’hésitez 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 COWPOKE(1)