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

public static final String GCE_IP_PRECONFIGURED_KEY

Öffentliche Konstruktoren

GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo)

Ctor

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

Dieser Konstruktor wurde verworfen. 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, boolean isIpPreconfigured)

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

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

Rufe per SSH einen Fehlerbericht vom Gerät ab, um potenzielle 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 logAndDeleteFile(File tempFile, String dataName, ITestLogger logger)
static void logDirectory(File remoteDirectory, String baseName, ITestLogger logger, LogDataType type)
static boolean logNestedRemoteFile(ITestLogger logger, GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil, String remoteFilePath, LogDataType type)

Eine Remote-Datei aus einer verschachtelten Instanz abrufen und protokollieren

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

Eine Remote-Datei aus einer verschachtelten Instanz abrufen und protokollieren

void logSerialOutput(GceAvdInfo infos, ITestLogger logger)

Loggt die serielle Ausgabe eines Geräts, das durch 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()

Fahren Sie die mit startGce() verknüpfte Gce-Instanz herunter.

GceAvdInfo startGce(String ipDevice, String user, Integer offset, MultiMap<String, String> attributes, ITestLogger logger)

Versuchen Sie, eine gce-Instanz entweder mit Acloud oder Oxygen zu starten.

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

Versuchen Sie, eine gce-Instanz zu starten.

GceAvdInfo startGce(String ipDevice, String user, Integer offset, MultiMap<String, String> attributes)

Versuchen Sie, eine gce-Instanz entweder mit Acloud oder Oxygen zu starten.

startMultiDevicesGce( buildInfos)

Diese Methode ist veraltet. Entfernen Sie diese Zeile, nachdem der Master-Branch aktualisiert wurde.

startMultiDevicesGce( buildInfos, MultiMap<String, String> attributes)

Versuch, eine GCE-Instanz mit mehreren Geräten mit Oxygen zu starten.

Geschützte Methoden

static buildShutdownCommand(File config, TestDeviceOptions options, String instanceName, String hostname, boolean isIpPreconfigured)
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

GCE_IP_PRECONFIGURED_KEY

public static final String GCE_IP_PRECONFIGURED_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 verworfen.
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: Die DeviceDescriptor, die mit dem GCE-Gerät verknüpft wird.

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

buildInfo IBuildInfo: Ein IBuildInfo, der 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, 
                boolean isIpPreconfigured)

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, der nur für Sauerstoff-Tintenfisch verwendet wird.

isIpPreconfigured boolean: ob die AVD auf einem Remotegerät mit vorkonfigurierter IP-Adresse erstellt wurde

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: Ein TestDeviceOptions, der 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.

Ausgabe
IOException

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 serielle Logausgabe 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 das ADB in der verschachtelten virtuellen Instanz angefordert werden.

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

options TestDeviceOptions: Ein TestDeviceOptions, der 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.

Ausgabe
IOException

logAndDeleteFile

public static void logAndDeleteFile (File tempFile, 
                String dataName, 
                ITestLogger logger)

Parameter
tempFile File

dataName String

logger ITestLogger

logDirectory (Logverzeichnis)

public static void logDirectory (File remoteDirectory, 
                String baseName, 
                ITestLogger logger, 
                LogDataType type)

Parameter
remoteDirectory File

baseName String

logger ITestLogger

type LogDataType

logNestedRemoteFile

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

Eine Remote-Datei 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: Ein TestDeviceOptions, das 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 Remote-Pfad, unter dem die Datei zu finden ist.

type LogDataType: die LogDataType der protokollierten Datei.

Returns
boolean ob die Datei erfolgreich protokolliert wurde.

logNestedRemoteFile

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

Eine Remote-Datei 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: Ein TestDeviceOptions, das 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 zum Protokollieren der Datei verwendet werden soll. Wenn „null“ festgelegt ist, wird der tatsächliche Dateiname verwendet.

Returns
boolean ob die Datei erfolgreich protokolliert wurde.

logSerialOutput

public void logSerialOutput (GceAvdInfo infos, 
                ITestLogger logger)

Die serielle Ausgabe eines mit GceAvdInfo beschriebenen Geräts wird protokolliert.

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: Ein TestDeviceOptions, das 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 in Millisekunden für den Befehl. 0 bedeutet kein Zeitlimit.

command String: Der auszuführende Remotebefehl.

Returns
CommandResult CommandResult mit dem Ergebnis der Ausführung.

shutdownGce

public boolean shutdownGce ()

Fahren Sie die mit startGce() verknüpfte Gce-Instanz herunter.

Returns
boolean gibt "true" zurück, wenn das Herunterfahren von gce als nicht blockierend angefordert wurde.

startGce

public GceAvdInfo startGce (String ipDevice, 
                String user, 
                Integer offset, 
                MultiMap<String, String> attributes, 
                ITestLogger logger)

Versuchen Sie, eine GCE-Instanz mit Acloud oder Oxygen zu starten.

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

user String: der Nutzer des Hosts, auf dem die AVD ausgeführt wird, null, falls nicht zutreffend

offset Integer: Gerätenummernoffset der AVD auf dem Host, null, falls nicht zutreffend

attributes MultiMap: Attribute, die dem aktuellen Aufruf zugeordnet sind und zum Weiterleiten geeigneter Informationen an die GCE-Instanz verwendet werden, die als VM-Metadaten hinzugefügt werden sollen

logger ITestLogger: Der ITestLogger, in dem die Logs zum Starten des Geräts protokolliert werden sollen.

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

Ausgabe
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

startGce

public GceAvdInfo startGce ()

Returns
GceAvdInfo

Ausgabe
TargetSetupError

startGce

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

Versuchen Sie, eine gce-Instanz zu starten.

Parameter
ipDevice String: die anfängliche IP-Adresse der GCE-Instanz, in der 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
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

startgce

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

Versuchen Sie, eine GCE-Instanz mit Acloud oder Oxygen zu starten.

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

user String: der Nutzer des Hosts, auf dem die AVD ausgeführt wird, null, falls nicht zutreffend

offset Integer: Gerätenummernoffset der AVD auf dem Host, 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
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

startMultiDevicesGce

public  startMultiDevicesGce ( buildInfos)

Diese Methode ist veraltet.
Entfernen Sie dies, nachdem der Master-Branch aktualisiert wurde.

Parameter
buildInfos

Returns

Ausgabe
TargetSetupError

startMultiDevicesGce

public  startMultiDevicesGce ( buildInfos, 
                MultiMap<String, String> attributes)

Versuch, eine GCE-Instanz mit mehreren Geräten mit Oxygen zu starten.

Parameter
buildInfos : ERROR(/List)

attributes MultiMap: Attribute, die dem aktuellen Aufruf zugeordnet sind

Returns
Ein ERROR(/List) zur Beschreibung der GCE Avd Info.

Ausgabe
TargetSetupError

Geschützte Methoden

buildShutdownCommand

protected static  buildShutdownCommand (File config, 
                TestDeviceOptions options, 
                String instanceName, 
                String hostname, 
                boolean isIpPreconfigured)

Parameter
config File

options TestDeviceOptions

instanceName String

hostname String

isIpPreconfigured boolean

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