GceManager

public class GceManager
extends Object

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


Helper che gestisce le chiamate GCE per avviare/interrompere e raccogliere i log da GCE.

Riepilogo

Costanti

String GCE_HOSTNAME_KEY

String GCE_INSTANCE_CLEANED_KEY

String GCE_INSTANCE_NAME_KEY

String GCE_IP_PRECONFIGURED_KEY

Costruttori pubblici

GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo)

Ctor

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

Ctor, variante che può essere utilizzata per fornire direttamente il nome dell'istanza GCE da utilizzare.

GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo, List<IBuildInfo> testResourceBuildInfos)

Questo costruttore è deprecato. Utilizza altri costruttori. Questa opzione viene mantenuta temporaneamente per la compatibilità con le versioni precedenti.

Metodi pubblici

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

Esegui Acloud per spegnere il dispositivo virtuale.

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

Recupera un bugreportz dal dispositivo utilizzando SSH per evitare potenziali problemi di connessione ADB.

HostOrchestratorUtil getHostOrchestratorUtil()

Restituisce l'istanza di HostOrchestratorUtil.

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

Legge i contenuti attuali del log seriale dell'istanza Gce Avd.

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

Recupera una segnalazione di bug tramite SSH per un'istanza nidificata.

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, String baseName, List<String> scpArgs)

Recupera un file remoto da un'istanza nidificata e registralo.

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

Recupera un file remoto da un'istanza nidificata e registralo.

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

Recupera un file remoto da un'istanza nidificata e registralo.

void logSerialOutput(GceAvdInfo infos, ITestLogger logger)

Registra l'output seriale di un dispositivo descritto da GceAvdInfo.

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

Esegui il comando remoto tramite SSH su un'istanza.

boolean shutdownGce()

Arresta l'istanza GCE associata a startGce().

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

Tentativo di avvio di un'istanza GCE con Acloud o Oxygen.

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

Tentativo di avvio di un'istanza GCE.

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

Tentativo di avvio di un'istanza GCE con Acloud o Oxygen.

List<GceAvdInfo> startMultiDevicesGce(List<IBuildInfo> buildInfos, MultiMap<String, String> attributes)

Tentativo di avvio dell'istanza GCE multi-dispositivo con Oxygen.

List<GceAvdInfo> startMultiDevicesGce(List<IBuildInfo> buildInfos)

Questo metodo è obsoleto. Remove this after master branch is updated.

Metodi protetti

static List<String> buildShutdownCommand(File config, TestDeviceOptions options, String instanceName, String hostname, boolean isIpPreconfigured)
String extractInstanceName(String bootupLogs)

Recupera il nome dell'istanza dai log di avvio di GCE.

Costanti

GCE_HOSTNAME_KEY

public static final String GCE_HOSTNAME_KEY

Valore costante: "gce-hostname"

GCE_INSTANCE_CLEANED_KEY

public static final String GCE_INSTANCE_CLEANED_KEY

Valore costante: "gce-instance-clean-called"

GCE_INSTANCE_NAME_KEY

public static final String GCE_INSTANCE_NAME_KEY

Valore costante: "gce-instance-name"

GCE_IP_PRECONFIGURED_KEY

public static final String GCE_IP_PRECONFIGURED_KEY

Valore costante: "gce-ip-pre-configured"

Costruttori pubblici

GceManager

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

Ctor

Parametri
deviceDesc DeviceDescriptor: il DeviceDescriptor che verrà associato al dispositivo GCE.

deviceOptions TestDeviceOptions: un TestDeviceOptions associato al dispositivo.

buildInfo IBuildInfo: un IBuildInfo che descrive la build gce da avviare.

GceManager

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

Ctor, variante che può essere utilizzata per fornire direttamente il nome dell'istanza GCE da utilizzare.

Parametri
deviceDesc DeviceDescriptor: il DeviceDescriptor che verrà associato al dispositivo GCE.

deviceOptions TestDeviceOptions: un TestDeviceOptions associato al dispositivo

buildInfo IBuildInfo: un IBuildInfo che descrive la build gce da avviare.

gceInstanceName String: il nome dell'istanza da utilizzare.

gceHost String: il nome host o l'IP dell'istanza da utilizzare.

GceManager

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

Questo costruttore è deprecato.
Utilizza altri costruttori. Questa opzione viene mantenuta temporaneamente per la compatibilità con le versioni precedenti.

Parametri
deviceDesc DeviceDescriptor

deviceOptions TestDeviceOptions

buildInfo IBuildInfo

testResourceBuildInfos List

Metodi pubblici

AcloudShutdown

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

Esegui Acloud per spegnere il dispositivo virtuale.

Parametri
options TestDeviceOptions: TestDeviceOptions per le opzioni Acloud

runUtil IRunUtil: Il IRunUtil per eseguire Acloud

instanceName String: L'istanza da arrestare.

hostname String: nome host dell'istanza, utilizzato solo per Oxygen cuttlefish.

isIpPreconfigured boolean: indica se l'AVD è stato creato su un dispositivo remoto con IP preconfigurato

Resi
boolean Vero se l'operazione è riuscita

cleanUp

public void cleanUp ()

collectErrorSignatures

public static void collectErrorSignatures (File remoteFile)

Parametri
remoteFile File

getBugreportzWithSsh

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

Recupera un bugreportz dal dispositivo utilizzando SSH per evitare potenziali problemi di connessione ADB.

Parametri
gceAvd GceAvdInfo: i GceAvdInfo che descrivono il dispositivo.

options TestDeviceOptions: un TestDeviceOptions che descrive le opzioni del dispositivo da utilizzare per il dispositivo GCE.

runUtil IRunUtil: un IRunUtil per eseguire i comandi.

Resi
File Un file che punta al report dei bug ZIP o null se si è verificato un problema.

Genera
java.io.IOException
IOException

getHostOrchestratorUtil

public HostOrchestratorUtil getHostOrchestratorUtil ()

Restituisce l'istanza di HostOrchestratorUtil.

Resi
HostOrchestratorUtil

getInstanceSerialLog

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

Legge i contenuti attuali del log seriale dell'istanza Gce Avd.

Parametri
infos GceAvdInfo: il GceAvdInfo che descrive l'istanza.

avdConfigFile File: il file di configurazione AVD

jsonKeyFile File: il file della chiave JSON del service account.

runUtil IRunUtil: un IRunUtil per eseguire i comandi.

Resi
String L'output del log seriale o null se si verifica un problema.

getNestedDeviceSshBugreportz

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

Recupera una segnalazione di bug tramite SSH per un'istanza nidificata. Ciò richiede di richiedere adb nell'istanza virtuale nidificata.

Parametri
gceAvd GceAvdInfo: i GceAvdInfo che descrivono il dispositivo.

options TestDeviceOptions: un TestDeviceOptions che descrive le opzioni del dispositivo da utilizzare per il dispositivo GCE.

runUtil IRunUtil: un IRunUtil per eseguire i comandi.

Resi
File Un file che punta al report dei bug ZIP o null se si è verificato un problema.

Genera
java.io.IOException
IOException

logAndDeleteFile

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

Parametri
tempFile File

dataName String

logger ITestLogger

logDirectory

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

Parametri
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, 
                String baseName, 
                List<String> scpArgs)

Recupera un file remoto da un'istanza nidificata e registralo.

Parametri
logger ITestLogger: il ITestLogger in cui registrare il file.

gceAvd GceAvdInfo: i GceAvdInfo che descrivono il dispositivo.

options TestDeviceOptions: un TestDeviceOptions che descrive le opzioni del dispositivo da utilizzare per il dispositivo GCE.

runUtil IRunUtil: un IRunUtil per eseguire i comandi.

remoteFilePath String: il percorso remoto in cui trovare il file.

type LogDataType: il LogDataType del file registrato.

baseName String: il nome di base da utilizzare per registrare il file. Se è nullo, verrà utilizzato il nome del file effettivo.

scpArgs List: argomenti aggiuntivi da passare al comando scp

Resi
boolean se il file viene registrato correttamente.

logNestedRemoteFile

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

Recupera un file remoto da un'istanza nidificata e registralo.

Parametri
logger ITestLogger: il ITestLogger in cui registrare il file.

gceAvd GceAvdInfo: i GceAvdInfo che descrivono il dispositivo.

options TestDeviceOptions: un TestDeviceOptions che descrive le opzioni del dispositivo da utilizzare per il dispositivo GCE.

runUtil IRunUtil: un IRunUtil per eseguire i comandi.

remoteFilePath String: il percorso remoto in cui trovare il file.

type LogDataType: il LogDataType del file registrato.

Resi
boolean se il file viene registrato correttamente.

logNestedRemoteFile

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

Recupera un file remoto da un'istanza nidificata e registralo.

Parametri
logger ITestLogger: il ITestLogger in cui registrare il file.

gceAvd GceAvdInfo: i GceAvdInfo che descrivono il dispositivo.

options TestDeviceOptions: un TestDeviceOptions che descrive le opzioni del dispositivo da utilizzare per il dispositivo GCE.

runUtil IRunUtil: un IRunUtil per eseguire i comandi.

remoteFilePath String: il percorso remoto in cui trovare il file.

type LogDataType: il LogDataType del file registrato.

baseName String: il nome di base da utilizzare per registrare il file. Se è nullo, verrà utilizzato il nome del file effettivo.

Resi
boolean se il file viene registrato correttamente.

logSerialOutput

public void logSerialOutput (GceAvdInfo infos, 
                ITestLogger logger)

Registra l'output seriale di un dispositivo descritto da GceAvdInfo.

Parametri
infos GceAvdInfo: il GceAvdInfo che descrive l'istanza.

logger ITestLogger: Il ITestLogger in cui registrare il log seriale.

remoteSshCommandExecution

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

Esegui il comando remoto tramite SSH su un'istanza.

Parametri
gceAvd GceAvdInfo: i GceAvdInfo che descrivono il dispositivo.

options TestDeviceOptions: un TestDeviceOptions che descrive le opzioni del dispositivo da utilizzare per il dispositivo GCE.

runUtil IRunUtil: un IRunUtil per eseguire i comandi.

timeoutMs long: il timeout in millisecondi per il comando. 0 significa nessun timeout.

command String: il comando remoto da eseguire.

Resi
CommandResult CommandResult contenente il risultato dell'esecuzione.

shutdownGce

public boolean shutdownGce ()

Arresta l'istanza GCE associata a startGce().

Resi
boolean restituisce true se l'arresto di GCE è stato richiesto come non bloccante.

startGce

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

Tentativo di avvio di un'istanza GCE con Acloud o Oxygen.

Parametri
ipDevice String: l'IP iniziale dell'istanza GCE in cui eseguire AVD, null se non applicabile

user String: l'utente che esegue AVD, null se non applicabile

offset Integer: l'offset del numero di dispositivo dell'AVD nell'host, null se non applicabile

attributes MultiMap: attributi associati alla chiamata corrente, utilizzati per trasmettere le informazioni applicabili all'istanza GCE da aggiungere come metadati della VM

logger ITestLogger: il ITestLogger in cui registrare i log di avvio del dispositivo.

Resi
GceAvdInfo un GceAvdInfo che descrive l'istanza GCE. Potrebbe essere un'istanza BOOT_FAIL.

Genera
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

startGce

public GceAvdInfo startGce ()

Resi
GceAvdInfo

Genera
TargetSetupError

startGce

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

Tentativo di avvio di un'istanza GCE.

Parametri
ipDevice String: l'IP iniziale dell'istanza GCE in cui eseguire AVD, null se non applicabile

attributes MultiMap: attributi associati alla chiamata corrente, utilizzati per trasmettere le informazioni applicabili all'istanza GCE da aggiungere come metadati della VM

Resi
GceAvdInfo un GceAvdInfo che descrive l'istanza GCE. Potrebbe essere un'istanza BOOT_FAIL.

Genera
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

startGce

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

Tentativo di avvio di un'istanza GCE con Acloud o Oxygen.

Parametri
ipDevice String: l'IP iniziale dell'istanza GCE in cui eseguire AVD, null se non applicabile

user String: l'utente che esegue AVD, null se non applicabile

offset Integer: l'offset del numero di dispositivo dell'AVD nell'host, null se non applicabile

attributes MultiMap: attributi associati alla chiamata corrente, utilizzati per trasmettere le informazioni applicabili all'istanza GCE da aggiungere come metadati della VM

Resi
GceAvdInfo un GceAvdInfo che descrive l'istanza GCE. Potrebbe essere un'istanza BOOT_FAIL.

Genera
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

startMultiDevicesGce

public List<GceAvdInfo> startMultiDevicesGce (List<IBuildInfo> buildInfos, 
                MultiMap<String, String> attributes)

Tentativo di avvio dell'istanza GCE multi-dispositivo con Oxygen.

Parametri
buildInfos List: ERROR(/List)

attributes MultiMap: attributi associati all'invocazione corrente

Resi
List<GceAvdInfo> un ERROR(/List) che descrive le informazioni sull'AVD GCE.

Genera
TargetSetupError

startMultiDevicesGce

public List<GceAvdInfo> startMultiDevicesGce (List<IBuildInfo> buildInfos)

Questo metodo è obsoleto.
Remove this after master branch is updated.

Parametri
buildInfos List

Resi
List<GceAvdInfo>

Genera
TargetSetupError

Metodi protetti

buildShutdownCommand

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

Parametri
config File

options TestDeviceOptions

instanceName String

hostname String

isIpPreconfigured boolean

Resi
List<String>

extractInstanceName

protected String extractInstanceName (String bootupLogs)

Recupera il nome dell'istanza dai log di avvio di GCE. Cerca il pattern "name": "gce-" per estrarne il nome. Estraiamo i dati dai log anziché dal file dei risultati perché in caso di errore di avvio di GCE, il nome dell'istanza tentata non viene visualizzato in JSON.

Parametri
bootupLogs String

Risultati
String