GceManager

public class GceManager
extends Object

java.lang.Object
   ↳ com.android.tradefed.device.cloud.GceManager


Helfer, der die GCE-Aufrufe zum Starten/Anhalten und Erfassen von Protokollen aus GCE verwaltet.

Zusammenfassung

Felder

public static final String GCE_HOSTNAME_KEY

public static final String GCE_INSTANCE_CLEANED_KEY

public static final String GCE_INSTANCE_NAME_KEY

Öffentliche Konstruktoren

GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo)

Ctor

GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo, testResourceBuildInfos)

Dieser Konstruktor ist veraltet. Verwenden Sie andere Konstruktoren. Wir behalten diese Funktion vorübergehend zur Abwärtskompatibilität bei.

GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo, String gceInstanceName, String gceHost)

Ctor: Variante, mit der der Name der GCE-Instanz direkt angegeben werden kann.

Öffentliche Methoden

static boolean AcloudShutdown(TestDeviceOptions options, IRunUtil runUtil, String instanceName, String hostname)

Tatsächliche Acloud-Ausführung zum Herunterfahren des virtuellen Geräts.

void cleanUp()
static File getBugreportzWithSsh(GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil)

Holen Sie sich einen Bugreportz vom Gerät über SSH, um mögliche Probleme mit der ADB-Verbindung zu vermeiden.

static String getInstanceSerialLog(GceAvdInfo infos, File avdConfigFile, File jsonKeyFile, IRunUtil runUtil)

Liest den aktuellen Inhalt des seriellen Logs der GCE Avd-Instanz.

static File getNestedDeviceSshBugreportz(GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil)

Einen Fehlerbericht über SSH für eine verschachtelte Instanz abrufen

static void logNestedRemoteFile(ITestLogger logger, GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil, String remoteFilePath, LogDataType type)

Eine Remote-Datei aus einer verschachtelten Instanz abrufen und protokollieren.

static void logNestedRemoteFile(ITestLogger logger, GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil, String remoteFilePath, LogDataType type, String baseName)

Eine Remotedatei aus einer verschachtelten Instanz abrufen und protokollieren

void logSerialOutput(GceAvdInfo infos, ITestLogger logger)

Loggen Sie die serielle Ausgabe eines Geräts, das von GceAvdInfo beschrieben wird.

static CommandResult remoteSshCommandExecution(GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil, long timeoutMs, String... command)

Führen Sie den Remotebefehl über SSH auf einer Instanz aus.

boolean shutdownGce()

Beenden Sie die mit der startGce() verknüpfte GCE-Instanz.

GceAvdInfo startGce()
GceAvdInfo startGce(String ipDevice, MultiMap<String, String> attributes)

Versuch, eine GCE-Instanz zu starten

Geschützte Methoden

buildGceCmd(File reportFile, IBuildInfo b, String ipDevice, MultiMap<String, String> attributes)

Erstellen und zurückgeben Sie den Befehl zum Starten von GCE.

String extractInstanceName(String bootupLogs)

Rufen Sie den Instanznamen aus den gce-Bootprotokollen ab.

Felder

GCE_HOSTNAME_KEY

public static final String GCE_HOSTNAME_KEY

GCE_INSTANCE_CLEANED_KEY

public static final String GCE_INSTANCE_CLEANED_KEY

GCE_INSTANCE_NAME_KEY

public static final String GCE_INSTANCE_NAME_KEY

Öffentliche Konstruktoren

GceManager

public GceManager (DeviceDescriptor deviceDesc, 
                TestDeviceOptions deviceOptions, 
                IBuildInfo buildInfo)

Ctor

Parameter
deviceDesc DeviceDescriptor: Der DeviceDescriptor, der dem GCE-Gerät zugeordnet wird.

deviceOptions TestDeviceOptions: Ein TestDeviceOptions, das mit dem Gerät verknüpft ist.

buildInfo IBuildInfo: Ein IBuildInfo, das den zu startenden GCE-Build beschreibt.

GceManager

public GceManager (DeviceDescriptor deviceDesc, 
                TestDeviceOptions deviceOptions, 
                IBuildInfo buildInfo, 
                 testResourceBuildInfos)

Dieser Konstruktor wurde eingestellt.
Verwenden Sie andere Konstruktoren. Wir behalten diese Funktion vorübergehend für die Abwärtskompatibilität bei.

Parameter
deviceDesc DeviceDescriptor

deviceOptions TestDeviceOptions

buildInfo IBuildInfo

testResourceBuildInfos

GceManager

public GceManager (DeviceDescriptor deviceDesc, 
                TestDeviceOptions deviceOptions, 
                IBuildInfo buildInfo, 
                String gceInstanceName, 
                String gceHost)

Ctor: Variante, mit der der Name der GCE-Instanz direkt angegeben werden kann.

Parameter
deviceDesc DeviceDescriptor: Der DeviceDescriptor, der dem GCE-Gerät zugeordnet wird.

deviceOptions TestDeviceOptions: Eine TestDeviceOptions, die mit dem Gerät verknüpft ist

buildInfo IBuildInfo: Ein IBuildInfo, das den zu startenden GCE-Build beschreibt.

gceInstanceName String: Der zu verwendende Instanzname.

gceHost String: Der Hostname oder die IP-Adresse der zu verwendenden Instanz.

Öffentliche Methoden

AcloudShutdown

public static boolean AcloudShutdown (TestDeviceOptions options, 
                IRunUtil runUtil, 
                String instanceName, 
                String hostname)

Tatsächliche Acloud-Ausführung zum Herunterfahren des virtuellen Geräts.

Parameter
options TestDeviceOptions: TestDeviceOptions für die Acloud-Optionen

runUtil IRunUtil: Der IRunUtil zum Ausführen von Acloud

instanceName String: Die Instanz, die heruntergefahren werden soll.

hostname String: Hostname der Instanz, nur für Oxygen-Kugelfische verwendet.

Returns
boolean „True“, wenn erfolgreich

cleanUp

public void cleanUp ()

getBugreportzWithSsh

public static File getBugreportzWithSsh (GceAvdInfo gceAvd, 
                TestDeviceOptions options, 
                IRunUtil runUtil)

Holen Sie sich einen Bugreportz vom Gerät über SSH, um mögliche Probleme mit der ADB-Verbindung zu vermeiden.

Parameter
gceAvd GceAvdInfo: Die GceAvdInfo, die das Gerät beschreiben.

options TestDeviceOptions: Eine TestDeviceOptions, die die Geräteoptionen beschreibt, die für das GCE-Gerät verwendet werden sollen.

runUtil IRunUtil: IRunUtil zum Ausführen von Befehlen

Returns
File Eine Datei, die auf den ZIP-Fehlerbericht verweist, oder „null“, wenn ein Problem aufgetreten ist.

getInstanceSerialLog

public static String getInstanceSerialLog (GceAvdInfo infos, 
                File avdConfigFile, 
                File jsonKeyFile, 
                IRunUtil runUtil)

Liest den aktuellen Inhalt des seriellen Logs der GCE Avd-Instanz.

Parameter
infos GceAvdInfo: Die GceAvdInfo, die die Instanz beschreibt.

avdConfigFile File: die avd-Konfigurationsdatei

jsonKeyFile File: die JSON-Schlüsseldatei des Dienstkontos.

runUtil IRunUtil: IRunUtil zum Ausführen von Befehlen

Returns
String Die Ausgabe des seriellen Logs oder „null“, wenn ein Fehler auftritt.

getNestedDeviceSshBugreportz

public static File getNestedDeviceSshBugreportz (GceAvdInfo gceAvd, 
                TestDeviceOptions options, 
                IRunUtil runUtil)

Einen Fehlerbericht über SSH für eine verschachtelte Instanz abrufen Dazu muss adb in der verschachtelten virtuellen Instanz angefordert werden.

Parameter
gceAvd GceAvdInfo: Die GceAvdInfo, die das Gerät beschreiben.

options TestDeviceOptions: Eine TestDeviceOptions, die die Geräteoptionen beschreibt, die für das GCE-Gerät verwendet werden sollen.

runUtil IRunUtil: IRunUtil zum Ausführen von Befehlen

Returns
File Eine Datei, die auf den ZIP-Fehlerbericht verweist, oder „null“, wenn ein Problem aufgetreten ist.

logNestedRemoteFile

public static void logNestedRemoteFile (ITestLogger logger, 
                GceAvdInfo gceAvd, 
                TestDeviceOptions options, 
                IRunUtil runUtil, 
                String remoteFilePath, 
                LogDataType type)

Eine Remotedatei aus einer verschachtelten Instanz abrufen und protokollieren

Parameter
logger ITestLogger: Der ITestLogger, in dem die Datei protokolliert werden soll.

gceAvd GceAvdInfo: Die GceAvdInfo, die das Gerät beschreiben.

options TestDeviceOptions: Eine TestDeviceOptions, die die Geräteoptionen beschreibt, die für das GCE-Gerät verwendet werden sollen.

runUtil IRunUtil: IRunUtil zum Ausführen von Befehlen

remoteFilePath String: Der Remotepfad, unter dem sich die Datei befindet.

type LogDataType: die LogDataType der protokollierten Datei.

logNestedRemoteFile

public static void logNestedRemoteFile (ITestLogger logger, 
                GceAvdInfo gceAvd, 
                TestDeviceOptions options, 
                IRunUtil runUtil, 
                String remoteFilePath, 
                LogDataType type, 
                String baseName)

Eine Remotedatei aus einer verschachtelten Instanz abrufen und protokollieren

Parameter
logger ITestLogger: Der ITestLogger, in dem die Datei protokolliert werden soll.

gceAvd GceAvdInfo: Die GceAvdInfo, die das Gerät beschreiben.

options TestDeviceOptions: Eine TestDeviceOptions, die die Geräteoptionen beschreibt, die für das GCE-Gerät verwendet werden sollen.

runUtil IRunUtil: IRunUtil zum Ausführen von Befehlen

remoteFilePath String: Der Remotepfad, unter dem sich die Datei befindet.

type LogDataType: die LogDataType der protokollierten Datei.

baseName String: Der Basisname, der für die Protokollierung der Datei verwendet werden soll. Wenn „null“ festgelegt ist, wird der tatsächliche Dateiname verwendet.

logSerialOutput

public void logSerialOutput (GceAvdInfo infos, 
                ITestLogger logger)

Loggen Sie die serielle Ausgabe eines Geräts, das von GceAvdInfo beschrieben wird.

Parameter
infos GceAvdInfo: Die GceAvdInfo, die die Instanz beschreibt.

logger ITestLogger: Der ITestLogger, in dem das serielle Protokoll protokolliert werden soll.

remoteSshCommandExecution

public static CommandResult remoteSshCommandExecution (GceAvdInfo gceAvd, 
                TestDeviceOptions options, 
                IRunUtil runUtil, 
                long timeoutMs, 
                String... command)

Führen Sie den Remotebefehl über SSH auf einer Instanz aus.

Parameter
gceAvd GceAvdInfo: Die GceAvdInfo, die das Gerät beschreiben.

options TestDeviceOptions: Eine TestDeviceOptions, die die Geräteoptionen beschreibt, die für das GCE-Gerät verwendet werden sollen.

runUtil IRunUtil: IRunUtil zum Ausführen von Befehlen

timeoutMs long: Das Zeitlimit für den Befehl in Millisekunden. 0 bedeutet kein Zeitlimit.

command String: Der auszuführende Remote-Befehl.

Returns
CommandResult CommandResult mit dem Ergebnis der Ausführung.

shutdownGce

public boolean shutdownGce ()

Beenden Sie die mit der startGce() verknüpfte GCE-Instanz.

Returns
boolean Gibt „wahr“ zurück, wenn die GCE-Herunterfahranfrage als nicht blockierend angefordert wurde.

startGce

public GceAvdInfo startGce ()

Returns
GceAvdInfo

Ausgabe
TargetSetupError

startGce

public GceAvdInfo startGce (String ipDevice, 
                MultiMap<String, String> attributes)

Versuch, eine GCE-Instanz zu starten

Parameter
ipDevice String: Die ursprüngliche IP-Adresse der GCE-Instanz, in der die AVD ausgeführt werden soll, null, falls nicht zutreffend

attributes MultiMap: Attribute, die mit der aktuellen Aufrufe verknüpft sind und zum Übergeben der entsprechenden Informationen an die GCE-Instanz verwendet werden, um sie als VM-Metadaten hinzuzufügen

Returns
GceAvdInfo eine GceAvdInfo, die die GCE-Instanz beschreibt. Dies könnte eine BOOT_FAIL-Instanz sein.

Ausgabe
TargetSetupError

Geschützte Methoden

buildGceCmd

protected  buildGceCmd (File reportFile, 
                IBuildInfo b, 
                String ipDevice, 
                MultiMap<String, String> attributes)

Erstellen und zurückgeben Sie den Befehl zum Starten von GCE. Wird für Tests freigegeben.

Parameter
reportFile File

b IBuildInfo

ipDevice String

attributes MultiMap

Returns

extractInstanceName

protected String extractInstanceName (String bootupLogs)

Rufen Sie den Instanznamen aus den gce-Bootprotokollen ab. Suchen Sie nach dem Muster „name“: „gce-“, um den Namen zu extrahieren. Wir extrahieren die Daten aus den Protokollen anstelle der Ergebnisdatei, da der Name der versuchten Instanz bei einem GCE-Startfehler nicht in JSON angezeigt wird.

Parameter
bootupLogs String

Returns
String