Il s'agit de la commande adt-virt-ssh 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
adt-virt-ssh - serveur de virtualisation autopkgtest utilisant SSH
SYNOPSIS
adt-virt-ssh [Options] [-- installation scénario Options ...]
DESCRIPTION
adt-virt-ssh fournit un serveur de virtualisation autopkgtest utilisant SSH.
Normalement adt-virt-ssh sera invoqué par adt-run.
adt-virt-ssh
peut utiliser une cible ssh déjà existante ou appeler un script de configuration pour créer/configurer un banc d'essai
et le serveur ssh.
AVERTISSEMENT! adt-virt-ssh modifiera le système cible en installant des packages et en exécutant
code de test arbitraire, donc you Voyages pour réinitialisation le banc d'essai vous-même notamment
sans script d'installation. Utilisez-le donc avec précaution.
EXIGENCES
adt-virt-ssh ne suppose rien concernant l'hôte cible autre que celui donné
la connexion ssh (et la mise en réseau) reste disponible tout le temps. Vous pouvez fournir
informations d'identification sur la ligne de commande pour les hôtes SSH déjà fonctionnels ou utilisez un script de configuration pour
préparer l'hôte pour la connexion (voir SETUP SCÉNARIO ci-dessous pour plus d'informations), pour
exemple pour créer une règle de transfert pour accéder à un hôte adb via ssh ou lancer un cloud
exemple.
OPTIONS
-h|--Aidez-moi
Afficher le message d'aide et quitter
-d|--déboguer
Activer la sortie de débogage
-H nom d'hôte | --nom_hôte=nom d'hôte
Se connecte et se connecte au nom d'hôte ou à l'adresse IP spécifié
-l utilisateur | --connexion=utilisateur
Spécifie l'utilisateur sous lequel se connecter sur la machine distante.
-i identité | --identité=identité
Sélectionne un fichier à partir duquel l'identité (clé privée) pour l'authentification par clé publique
est lu. Devrait généralement être ~/.ssh/id_rsa, mais vous pouvez envisager d'utiliser un autre
clé pour les tests.
-P Mot de passe | --mot de passe=Mot de passe
Spécifie le mot de passe sudo sur l'hôte distant.
Il peut s'agir du mot de passe en clair ou d'un fichier contenant le mot de passe. Cette
mot de passe sera utilisé pour configurer $SUDO_ASKPASS dans le cas où sudo nécessite un mot de passe.
Le coureur vérifiera si l'utilisateur a un accès sudo avec et sans mot de passe. Si
la vérification échoue, la capacité "root-on-testbed" ne sera pas disponible. Si sudo
fonctionne, alors les tests exécutés en tant qu'utilisateur auront $SUDO_ASKPASS dans leur environnement, donc
qu'ils peuvent courir sudo -A si besoin.
-p port | --port=port
port ssh à utiliser pour se connecter à l'hôte
-o Options | --options=Options
Transmis mot pour mot à ssh ; voir man ssh_config
-r|--redémarrer
Indique que reboot peut être utilisé dans le banc d'essai. Ceci est utile lors de l'exécution
redémarrage des tests sans script d'installation (qui peut déjà déclarer des capacités).
-s script_configuration | --setup-script=script_configuration
Script d'installation pour préparer le banc d'essai et la connexion ssh (voir SETUP SCÉNARIO ci-dessous pour plus
informations). Les noms de fichiers seront recherchés à la fois dans le répertoire actuel et dans
/usr/share/autopkgtest/ssh-setup/ vous n'avez donc pas besoin de donner le chemin complet pour
scripts de configuration fournis avec autopkgtest.
--timeout-ssh=secondes
Délai d'attente pour la connexion ssh, en secondes. La valeur par défaut est 300.
-- [mettre en place scénario arguments]
Tous les autres arguments suivants -- sera transmis textuellement à l'installation
script pour configurer l'hôte.
CONFIGURATION DES DOSSIERS
Si vous utilisez beaucoup d'options ou d'hôtes, vous pouvez mettre des parties ou la totalité de la ligne de commande dans
un fichier texte, avec une ligne par option. Par exemple. tu peux créer un fichier hôtetest.cfg avec
des contenus comme
-Htest.exemple.com
-ltestutilisateur
-Ps3kr1t
puis courir
adt-run [...] --- adt-virt-ssh @testhost.cfg
Le contenu du fichier de configuration sera développé sur place comme si vous aviez
étant donné son contenu sur la ligne de commande. Veuillez vous assurer que vous ne le font pas endroit surpeuplés jusqu'à XNUMX fois
options courtes et leurs valeurs, elles deviendraient une partie de la valeur de l'argument.
SAISIR, SORTIE ET EXIT STATUT
Le comportement de adt-virt-ssh est tel que décrit par la virtualisation AutomatedTesting
spécification du régime.
NOTES
adt-run ne fonctionne pas apt-get Mise à jour au début de la construction d'un package, ce qui peut provoquer un
échec de la construction si vous utilisez un modèle de série de développement. Vous devrez courir apt-get
Mise à jour dans le modèle vous-même (par exemple en utilisant --setup-commandes).
SETUP SCÉNARIO
adt-virt-ssh accepte un script de configuration en argument pour préparer le banc d'essai et le ssh
lien. Un script de configuration est un exécutable qui est appelé en premier avec une commande
argument et des options supplémentaires pour cette commande.
commander: ouvert
Lorsqu'il est appelé avec "open", le script doit créer un banc de test (si nécessaire), configurer ssh,
copiez la clé ssh dedans, configurez sudo, etc.
Il renvoie ensuite les informations suivantes sur la sortie standard sous la forme key =, un expert en
ligne par paire. Celles-ci reflètent principalement les options de la ligne de commande lorsque vous n'utilisez pas de script.
Champs obligatoires:
* nom d'utilisateur connexion
* nom d'hôte : nom d'hôte ou adresse IP
Champs facultatifs :
* identité : Chemin d'accès à la clé privée
* mot de passe : mot de passe sudo pour le nom d'utilisateur permettant d'acquérir les privilèges root. S'il n'est pas donné,
et sudo sans mot de passe ne fonctionne pas, le banc d'essai n'aura pas les privilèges root.
* port : port SSH sur le nom d'hôte, s'il est différent de 22
* capacités : capacités de test supplémentaires telles que "isolation-machine" ou "revert", voir
LISEZMOI.virtualisation-server.rst
Si le banc d'essai peut être redémarré en conservant l'état, le script doit annoncer
"redémarrer".
* options : transmis mot pour mot à ssh, voir man ssh_config
* extraopts : transmis mot pour mot à d'autres commandes ; cela permet un état supplémentaire (comme
noms de répertoires temporaires, identifiants de VM, etc.) à transmettre au nettoyage
commander: nettoyage
Appelé lors de la fermeture du banc d'essai ; devrait rétablir/supprimer les éléments installés en open autant que
possible si le banc d'essai n'est pas éphémère. Ceci est appelé avec toutes les options qui s'ouvrent
a été appelé avec, plus extraopt.
commander: revenir
S'il existe un moyen de réinitialiser le banc d'essai à son état d'origine (comme l'utilisation d'instantanés de VM
ou reconstruire des bancs d'essai éphémères), le script doit mettre "revert" (et, le cas échéant,
"revert-full-system") dans les capacités et implémenter cette commande. Ceci peut
sortir éventuellement certaines ou toutes les clés de configuration ssh de open() pour mettre à jour le
configuration, au cas où le nom d'hôte/IP change.
commander: attendre-redémarrer
Cela peut être implémenté si les capacités annoncent un "redémarrage" et que vous devez faire quelque chose
plus élaboré que d'attendre que le port ssh descende et revienne après
appeler "redémarrer". Cela doit attendre que le banc d'essai s'arrête, démarre et prépare à nouveau le
banc d'essai pour la connexion ssh.
commander: échec-débogage
Ceci est appelé lorsque le script d'installation échoue avec une valeur différente de zéro ou sur des délais d'attente en attente de ssh ou
redémarrer. Si disponible, cela devrait afficher des informations de débogage, telles que le journal de démarrage
depuis la console série. La mise en œuvre est facultative.
Inclus scripts
autopkgtest fournit des scripts de configuration pour les types courants de bancs d'essai dans
/usr/share/autopkgtest/ssh-setup/. Veuillez consulter les commentaires dans ces scripts pour savoir comment
Utilise les. Pensez également à utiliser /usr/share/autopkgtest/ssh-setup/SKELETON comme base
pour écrire le vôtre.
EXEMPLES
Exécutez les tests du package source libpng sur un "mytesthost" existant :
adt-run libpng --- ssh -H montesthost -l joe -P /tmp/joe_password
Exécutez les tests d'un package de clic sur un téléphone Ubuntu avec une connexion ssh sur ADB, en utilisant
le script de configuration, en spécifiant une option au script de configuration pour choisir un
ID de série :
adt-run ./ubuntu-calculator-app ./com.ubuntu.calculator_1.3.283_all.click \
--- ssh -s /usr/share/autopkgtest/ssh-setup/adb -- -s 0123456789abcdef
Utilisez adt-virt-ssh en ligne à l'aide des services onworks.net