Il s'agit de la commande piuparts qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
piuparts - suite de tests d'installation, de mise à niveau et de suppression .deb
SYNOPSIS
pièces [-apvV] [-d distro] [-i nom de fichier] [-I regexp] [-l fichier journal] [-m url] [--montage de liaison
dir] [paquet]... [change_file] ...
DESCRIPTION
pièces teste que les packages Debian gèrent correctement l'installation, la mise à niveau et la suppression.
Il le fait en créant une installation Debian minimale dans un chroot et en installant,
mise à niveau et suppression des packages dans cet environnement, et comparaison de l'état du
arborescence de répertoires avant et après. pièces signale tous les fichiers qui ont été ajoutés, supprimés,
ou modifié au cours de ce processus.
pièces est conçu comme un outil d'assurance qualité pour les personnes qui créent des paquets Debian pour
testez-les avant de les télécharger dans l'archive de paquets Debian.
Par défaut, piuparts peut faire trois tests différents :
1. Un simple test de purge d'installation au sein d'une distribution Debian (choisie avec le -d option,
instable par défaut). Il configure le chroot avec la distribution souhaitée, puis
installe et purge les packages et signale les problèmes.
2. Un simple test d'installation-mise à niveau-purge au sein d'une distribution Debian. Ce test est comme
le test d'installation-purge, mais installez d'abord les packages via apt-get puis du
fichiers de package donnés sur la ligne de commande. Si la ligne de commande a des noms de paquet (option
--apte utilisé), ou aucun package testé n'est connu pour apt-get (nouveaux packages), ce test est
ignoré, sinon il est exécuté automatiquement.
3. Un test de mise à niveau entre les versions Debian. Ce test est activé en utilisant le -d option
plusieurs fois et désactive les deux autres tests. Il met en place le chroot avec le premier
distribution nommée, puis la met à niveau vers chaque distribution successive, puis se souvient du
état de l'arborescence des répertoires à la fin. Après cela, il recommence avec le chroot du
première distribution, installe les packages souhaités (via apt-get), et est-ce que le
mise à niveau successive (via apt-get dist-upgrade). Ensuite, si les fichiers de package (et pas seulement
noms de paquet) ont été donnés sur la ligne de commande, il les installe. Enfin, il rapporte
problèmes par rapport à l'état de l'arborescence lors de la dernière distribution comparée
avec l'état sans que les packages aient été installés. Ce test peut être assez lent
éxécuter.
Notez que cela ne fonctionne pas avec expérimental, car apt-get ne fait pas automatiquement
mise à niveau vers les packages dans experimental. Pour tester un package ou un groupe de packages particulier
en expérimental, utilisez le deuxième test.
Les arguments de la ligne de commande sont les chemins vers les fichiers de package (par exemple, piuparts_1.0-1_all.deb),
chemins vers les fichiers de modifications (par exemple, piuparts_1.0-1_i386.changes), ou des noms de packages, si le
--apte option est donnée.
Lors du traitement des fichiers de modifications, par défaut, tous les packages d'un fichier de modifications seront
traité avec tous les packages individuels donnés sur la ligne de commande. Puis chacun
package donné sur la ligne de commande est traité dans un seul groupe. Si la
--liste-de-changements-singles est utilisé, les packages de tous les fichiers de modifications sont traités ensemble
ainsi que tous les packages individuels qui ont été donnés sur la ligne de commande.
pièces affiche vers la sortie standard des messages de journal pour montrer ce qui se passe. Si un
log est utilisé, les messages y vont également.
pièces doit être exécuté en tant que root.
OPTIONS
Les options doivent précéder les autres arguments de la ligne de commande.
-a, --apte
Les arguments de package sur la ligne de commande doivent être traités comme des noms de package et
installé via apt-get au lieu d'être des noms de fichiers de package, à installer via
dpkg -i.
--allow-base de données
Autoriser le démarrage des serveurs de bases de données MySQL et PostgreSQL dans le chroot pour les packages
nécessitant un accès à la base de données dans leurs scripts de mainteneur. N'utilisez pas cette option s'il y a
est déjà un serveur de base de données exécuté sur le système exécutant piuparts (ou
piuparts-esclave) ! Dans les configurations maître-esclave avec plusieurs esclaves s'exécutant sur un seul hôte
collisions peuvent se produire, elles seront détectées par détecter_piuparts_issues et la
les packages concernés seront à nouveau testés.
--cambre=arche
Créer un chroot et exécuter des tests pour l'architecture (non définie par défaut) arche. La valeur par défaut est le
sortie de dpkg --print-architecture.
-b archiver, --basetgz=archiver
Utilisez tarball comme contenu du chroot initial, au lieu d'en créer un nouveau avec
debootstrap.
L'archive peut être créée avec le -s option, ou vous pouvez en utiliser une qui constructeur a
créé (voir -p). Si vous en créez un manuellement, assurez-vous que la racine du chroot est la
racine de la boule de goudron.
--montage de liaison=dir
Bind-mount un répertoire à l'intérieur du chroot.
-d prénom, --Distribution=prénom
Quelle distribution Debian utiliser : un nom de code (par exemple jessie, stretch ou sid) ou
expérimental. La valeur par défaut est sid (=unstable).
-D saveur, --par défaut=saveur
Utilisez les paramètres par défaut adaptés à une version particulière de Debian : soit debian, soit
ubuntu. La valeur par défaut est debian.
--ne-vérifier-les-signatures
Ne vérifiez pas les signatures des fichiers Release lors de l'exécution de debootstrap. Également défini
APT::Get::AllowUnauthentiated en conséquence dans /etc/apt/apt.conf dans les chroots.
--dpkg-force-confdef
Faites en sorte que dpkg utilise --force-confdef, qui permet à dpkg de toujours choisir l'action par défaut lorsqu'un
le fichier de configuration modifié est trouvé. Cette option fera en sorte que piuparts ignore les erreurs qu'il s'agissait
conçu pour signaler et ne doit donc être utilisé que pour masquer des problèmes en fonction
packages. Le présent option doit normalement pas be utilisé. (Voir #466118.)
--dpkg-noforce-unsafe-io
Empêchez l'exécution de dpkg avec --force-unsafe-io. --force-unsafe-io fait sauter dpkg
certaines synchronisations de système de fichiers connues pour causer une dégradation substantielle des performances sur certains
systèmes de fichiers. Ainsi, l'inclusion de cette option revient à un comportement sûr mais plus lent. Les
--dpkg-noforce-unsafe-io est requis pour exécuter des tests sur des distributions antérieures à
presser.
--no-eatmydata
Empêcher l'utilisation de eatmydata. L'option --no-eatmydata est requise pour exécuter des tests sur
squeeze ou des distributions plus anciennes.
--forfaits-extra-anciens=pqt1[,pqt2]...
Installez d'anciens packages supplémentaires avant la mise à niveau. Permet de tester le package
renomme/fusionne là où l'ancien package n'est plus disponible dans la nouvelle distribution
et le nouveau utilise les conflits/remplacements. L'argument est une liste séparée par des virgules de
les noms de package et l'option peut être donnée plusieurs fois. Pour les tests d'installation/purge
ces packages seront installés avant le package à tester.
-e dis-moi, --chroot-existant=dis-moi
Utilisez le répertoire spécifié comme source pour le nouveau chroot, au lieu de construire un nouveau
un avec debootstrap. Ceci est similaire à --basetgz, mais le contenu n'est pas archivé.
--distupgrade-to-testdebs
Utilisez le référentiel "testdebs" pour remplacer les packages dans la cible de mise à niveau
Distribution. Cela permet de tester des chemins de mise à niveau complexes avant que les packages n'entrent dans le
archiver.
--extra-dépôt=deb-ligne
Fournissez une ligne supplémentaire (non analysée) à ajouter à sources.list, par exemple deb
or deb fichier: // ./ Utile pour, par exemple, les rétroportages,
la sécurité ou les référentiels locaux qui ne peuvent pas être gérés par --miroiter. Peut être répété à
ajouter plus d'une ligne.
-i nom de fichier, --ignorer=nom de fichier
Ajouter un nom de fichier à la liste des noms de fichiers à ignorer lors de la comparaison des modifications précédentes
et après l'installation. Par défaut, piuparts ignore les fichiers qui changent toujours au cours d'une
l'installation et la désinstallation des packages, comme dpkg fichiers d'état. Le nom du fichier
doit être relatif à la racine du chroot (par exemple, var/lib/dpkg/état). Cette option
peut être utilisé autant de fois que nécessaire.
-I regexp, --ignore-regexp=regexp
Ajouter un modèle d'expression régulière à la liste des modèles pour les noms de fichiers à ignorer
lors de la comparaison des changements avant et après l'installation. Cette option peut être utilisée autant
fois que nécessaire.
--installer-purger-installer
Purger le package après l'installation et réinstaller. Toutes les dépendances sont installées pendant
purge.
--install-recommend
Activez l'installation de Recommandes.
--installer-supprimer-installer
Supprimez le package après l'installation et réinstallez. Pour tester l'installation dans
état config-files-resting.
-k, --keep-tmpdir
Ne supprimez pas le répertoire temporaire du chroot à la fin du programme.
-K, --porte-clés=nom de fichier
Utilisez FILE comme trousseau de clés à utiliser avec debootstrap lors de la création de chroots.
--keep-liste-des-sources
Ne modifiez pas le fichier etc/apt/sources.list du chroot (n'a de sens qu'avec --basetgz).
--list-fichiers-installés
Lister les fichiers ajoutés au chroot après l'installation du paquet et après le
l'installation des dépendances du package.
--lvm-volume=volume lvm
Utilisez le lvm-volume spécifié comme source pour le chroot, au lieu d'en construire un nouveau
avec debootstrap. Cela crée un instantané du volume LVM donné et le monte sur le
chemin chroot.
--lvm-snapshot-taille=taille de l'instantané
Utiliser la taille d'instantané spécifiée comme taille d'instantané lors de la création d'un nouvel instantané LVM
(par défaut : 1 G)
-l nom de fichier, --fichier journal=nom de fichier
Ajouter le fichier journal à nom de fichier en plus de la sortie standard.
--niveau de journal=niveau
Afficher les messages du niveau de journalisation LEVEL, les valeurs possibles sont : error, info, dump, debug.
La valeur par défaut est dump.
-m url, --miroiter=url
Quel miroir Debian utiliser. La valeur par défaut est le premier miroir nommé dans
/etc/apt/sources.list or http://httpredir.debian.org/debian si aucun n'est trouvé. Cette
L'option peut être utilisée plusieurs fois pour utiliser plusieurs miroirs. Seul le premier miroir est
utilisé avec debootstrap.
Le manuel de formation composants électriques qui sont utilisés pour un miroir peut également être réglé avec cette option : un espace
liste séparée dans le même argument (vous devez donc citer l'intégralité de l'argument dans
La coquille). Si aucun composant n'est donné explicitement, les composants Debian habituels sont
utilisé (main, contrib et non-free). Pour les miroirs lire de /etc/apt/sources.list,
les composants sont lus au même endroit.
Notez que file:adresses fonctionne si les répertoires sont rendus accessibles depuis le
chrooter avec --montage de liaison.
--pas-adéquat
Ne fonctionne pas correctement après l'installation. La valeur par défaut est de fonctionner correctement, à condition qu'il soit
installé.
--pas de détournement
Ne cherchez pas les détournements cassés.
-n, --no-ignore
Oubliez toutes les ignores intégrées et autres qui ont été définies jusqu'à présent. Tout -i or -I
les arguments qui viennent après celui-ci seront obéis, mais aucun de ceux qui viennent
avant.
-N, --no-liens symboliques
Ne recherchez pas les liens symboliques brisés.
--fail-if-inadapté
Échec sur des résultats inadéquats d'une exécution adéquate. La valeur par défaut est de simplement émettre ces
erreurs comme avertissements.
--fail-on-breaked-symlinks
Échec sur les liens symboliques brisés. La valeur par défaut est d'émettre simplement ces erreurs en tant qu'avertissements.
--no-test-de-mise-à-niveau
Ignorez le test de mise à niveau à partir d'une version existante dans l'archive.
--no-install-purge-test
Ignorez le test d'installation et de purge.
-p, *--pbuilder
Utilisez le /var/cache/pbuilder/base.tgz comme tarball de base. Ceci est un raccourci pour que vous
pas besoin d'utiliser -b pour elle.
--pédant-purge-test
Soyez pédant lorsque vous vérifiez si un paquet purgé laisse des fichiers derrière lui. Si cette option est
non défini, fichiers laissés dans / Tmp sont ignorés.")
--Procuration=URL
Utilisez le proxy à l'URL pour accéder au(x) miroir(s) Debian. Prend le pas sur le
http proxy variable d'environnement. L'utilisation d'un proxy local est recommandée car piuparts
peut utiliser de grandes quantités de bande passante pour télécharger à plusieurs reprises les mêmes fichiers.
-s nom de fichier, --enregistrer=nom de fichier
Enregistrez le chroot, une fois qu'il a été configuré, en tant qu'archive dans nom de fichier. Il peut alors être
utilisé avec -b.
-B DOSSIER, --end-méta=DOSSIER
Chargez la sélection de package chroot et les métadonnées du fichier à partir de FILE. Voir la fonction
install_and_upgrade_between_distros() dans piuparts.py pour les valeurs par défaut. Surtout utile pour
tests de mise à niveau de distribution à grande échelle.
-S DOSSIER, --save-end-méta=DOSSIER
Enregistrez la sélection du package chroot et les métadonnées du fichier dans FILE pour une utilisation ultérieure. Voir le
fonction install_and_upgrade_between_distros() dans piuparts.py pour les valeurs par défaut. Principalement
utile pour les tests de mise à niveau de distribution à grande échelle.
--rép_scripts=DIR
Répertoire où sont placés les scripts personnalisés. Par défaut, ce n'est pas défini. Pour plus
informations à ce sujet, lisez README_server.txt
--schroot=SCHROOT-NOM
Utilisez la session schroot nommée SCHROOT-NAME pour le chroot, au lieu d'en créer un nouveau
avec debootstrap.
--liste-de-changements-singles
Lors du traitement des fichiers de modifications, piuparts traitera les packages dans chaque individu
modifie le fichier séparément. Cette option configurera piuparts pour analyser les packages de tous
modifie les fichiers avec tous les fichiers de package individuels qui peuvent avoir été
donné sur la ligne de commande.
--sauter-minimiser
Autoriser ignorer minimiser l'étape chroot. Ceci est utile lorsque vous souhaitez tester plusieurs packages
avec piuparts. Vous pouvez préparer un tarball déjà minimisé et sauter cette étape en tout
les tests. C'est la valeur par défaut maintenant.
--minimiser
Minimisez le chroot avec debfoster. C'était la valeur par défaut jusqu'à ce que #539142 soit
fixé.
--skip-cronfiles-test
Ignorez le test de la sortie des fichiers cron laissés dans le système après la suppression d'un package.
--skip-logrotatefiles-test
Ignorez le test de la sortie des fichiers logrotate laissés dans le système après avoir supprimé un
paquet.
--testdebs-dépôt=deb-ligne
Fournissez une ligne supplémentaire à ajouter à sources.list, par exemple deb
or deb fichier: // ./ Si seulement une URL ou un chemin local est donné comme
argument, "deb", "file://" et "./" seront ajoutés au début/ajoutés selon les besoins. Les
Le référentiel "testdebs" fournit les packages à tester (et quelques
dépendances, si nécessaire, par exemple tous les packages construits à partir du même package source que le
package (binaire) en cours de test) et peut être utilisé pour tester une installation complexe et
scénarios de mise à niveau impliquant des dépendances qui ne sont pas encore dans l'archive. Cette
Le référentiel sera disponible uniquement pour l'installation des packages cibles. Dépendance
la résolution sera effectuée par apt-get. Les packages à tester peuvent être passés en .debs
ou en tant que noms de packages (avec --apte).
-t annuaire, --tmpdir=annuaire
Utilisez le répertoire comme emplacement de création des fichiers et répertoires temporaires. Les
la valeur par défaut est la variable d'environnement TMPDIR, ou / Tmp s'il n'est pas défini.
Remarque : le répertoire temporaire doit pas être monté avec le nœudv or nosuide monter
option.
-v, --verbeux
Cette option n'a plus de sens, mais elle est toujours acceptée pour les retours en arrière
compatibilité.
-V, --version
Écrivez le numéro de version du programme.
--avertir-sur-les-erreurs-debsums
Imprimer un avertissement plutôt que d'échouer si debsums signale des fichiers modifiés.
--warn-on-restes-after-purge
Imprimez un avertissement plutôt que d'échouer si des fichiers sont laissés pour compte après la purge.
--avertir les autres
Imprimer un avertissement plutôt que d'échouer si des fichiers sont oubliés, modifiés ou supprimés par
un paquet qui n'a pas été donné sur la ligne de commande.
De cette façon, vous pouvez essentiellement isoler le test de purge dans vos propres packages. Si un colis
qui est introduit en tant que dépendance ne se purge pas proprement, le test n'échouera pas
à cause de cela (mais un message d'avertissement sera imprimé).
Le comportement avec plusieurs packages donnés sur la ligne de commande pourrait être problématique,
en particulier si l'arbre de dépendance d'un package de la liste en inclut un autre dans le
liste. Par conséquent, il est recommandé d'utiliser cette option avec un package à la fois.
EXEMPLES
Supposons que vous venez de construire une nouvelle version de votre paquet Debian, à télécharger sur
Debian instable. C'est dedans ../foo_1.0-2_i386.deb et vous voudriez savoir s'il
s'installe et se désinstalle correctement. Voici ce que vous feriez :
piuparts ../foo_1.0-2_i386.deb
Si le paquet existe déjà dans l'archive Debian, la commande ci-dessus teste également qu'il
mises à niveau correctement.
Pour faire le même test, mais en utilisant un miroir particulier, et uniquement le composant principal, il faudrait
fais ceci:
piuparts -m 'http://gytha/debian main' ../foo_1.0-2_i386.deb
Si vous voulez faire la même chose que ci-dessus mais pour vos fichiers de modifications, passez vos fichiers de modifications
lors de l'exécution de piuparts, et piuparts traitera chaque package dans les fichiers de modifications comme
bien que vous ayez passé tous ces packages sur la ligne de commande à piuparts vous-même. Pour
Exemple:
piuparts ../foo_1.0-2_i386.changes
piuparts -m 'http://gytha/debian main' ../foo_1.0-2_i386.changes
Si vous voulez tester qu'un paquet s'installe correctement dans l'écurie (actuellement jessie)
La version Debian, puis peut être mise à niveau vers la version testing (actuellement stretch) et instable (Sid)
versions, puis désinstallé sans problème, vous donneriez la commande suivante :
piuparts -a -d jessie -d stretch -d sid foo
ENVIRONNEMENT
TMPDIR Emplacement des fichiers et répertoires temporaires. S'il n'est pas défini, utilisez / Tmp. Voir aussi -t
(--tmpdir) option.
NOTES
La sortie des commandes exécutées par piuparts est limitée à trois mégaoctets. Pour modifier cette limite,
le code source doit être modifié. Les commandes dépassant cette limite seront annulées.
Utiliser piuparts en ligne en utilisant les services onworks.net