GceManager

public class GceManager
extends Object

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


Assistente que gerencia as chamadas do GCE para iniciar/parar e coletar registros do GCE.

Resumo

Campos

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

Construtores públicos

GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo)

Ctor

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

Esse construtor foi descontinuado. Use outros construtores. Mantemos isso temporariamente para compatibilidade com versões anteriores.

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

Ctor, uma variação que pode ser usada para fornecer o nome da instância do GCE a ser usado diretamente.

Métodos públicos

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

Execução real do Acloud para desligar o dispositivo virtual.

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

Receba um relatório de bugs do dispositivo usando SSH para evitar possíveis problemas de conexão com o adb.

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

Lê o conteúdo atual do registro de série da instância do Avd do Gce.

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

Receba um relatório do bug via SSH para uma instância aninhada.

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)

Busque um arquivo remoto de uma instância aninhada e registre-o.

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

Busque um arquivo remoto de uma instância aninhada e registre-o.

void logSerialOutput(GceAvdInfo infos, ITestLogger logger)

Registre a saída serial de um dispositivo descrito por GceAvdInfo.

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

Executar o comando remoto via SSH em uma instância.

boolean shutdownGce()

Encerre a instância do Gce associada ao startGce().

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

Tente iniciar uma instância gce com Acloud ou Oxygen.

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

Tente iniciar uma instância do gce.

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

Tente iniciar uma instância gce com Acloud ou Oxygen.

startMultiDevicesGce( buildInfos)

Esse método foi descontinuado. Remova-o depois que a ramificação mestre for atualizada.

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

Tente iniciar a instância gce de vários dispositivos com Oxygen.

Métodos protegidos

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

Crie e retorne o comando para iniciar o GCE.

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

Extraia o nome da instância dos registros de inicialização do gce.

Campos

GCE_HOSTNAME_KEY

public static final String GCE_HOSTNAME_KEY

CHAVE_INSTÂNCIA_LIMPA_em_GCE

public static final String GCE_INSTANCE_CLEANED_KEY

GCE_INSTANCE_NAME_KEY

public static final String GCE_INSTANCE_NAME_KEY

CHAVE_IP_PRECONFIGURADA DO GCE

public static final String GCE_IP_PRECONFIGURED_KEY

Construtores públicos

GceManager

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

Ctor

Parâmetros
deviceDesc DeviceDescriptor: o DeviceDescriptor que será associado ao dispositivo do GCE.

deviceOptions TestDeviceOptions: um TestDeviceOptions associado ao dispositivo.

buildInfo IBuildInfo: uma IBuildInfo que descreve o build do gce que será iniciado.

GceManager

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

Esse construtor foi descontinuado.
Use outros construtores. Mantemos isso temporariamente para compatibilidade com versões anteriores.

Parâmetros
deviceDesc DeviceDescriptor

deviceOptions TestDeviceOptions

buildInfo IBuildInfo

testResourceBuildInfos

GceManager

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

Ctor, uma variação que pode ser usada para fornecer o nome da instância do GCE a ser usado diretamente.

Parâmetros
deviceDesc DeviceDescriptor: o DeviceDescriptor que será associado ao dispositivo do GCE.

deviceOptions TestDeviceOptions: um TestDeviceOptions associado ao dispositivo.

buildInfo IBuildInfo: uma IBuildInfo que descreve o build do gce que será iniciado.

gceInstanceName String: o nome da instância a ser usada.

gceHost String: o nome do host ou IP da instância a ser usada.

Métodos públicos

Desligamento do Acloud

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

Execução real do Acloud para desligar o dispositivo virtual.

Parâmetros
options TestDeviceOptions: o TestDeviceOptions para as opções do Acloud.

runUtil IRunUtil: o IRunUtil para executar o Acloud

instanceName String: a instância a ser encerrada.

hostname String: o nome do host da instância, usado apenas para "cuttlefish" de oxigênio.

isIpPreconfigured boolean: se o AVD foi criado em um dispositivo remoto com IP pré-configurado.

Retorna
boolean Verdadeiro se for bem-sucedido

limpeza

public void cleanUp ()

getBugreportzWithSsh

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

Receba um relatório de bugs do dispositivo usando SSH para evitar possíveis problemas de conexão com o adb.

Parâmetros
gceAvd GceAvdInfo: o GceAvdInfo que descreve o dispositivo.

options TestDeviceOptions: um TestDeviceOptions que descreve as opções de dispositivo a serem usadas para o dispositivo GCE.

runUtil IRunUtil: um IRunUtil para executar comandos.

Retorna
File Um arquivo que aponta para o relatório de bugs zip ou nulo, se um problema tiver ocorrido.

Gera
IOException

getInstanceSerialLog

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

Lê o conteúdo atual do registro de série da instância do Avd do Gce.

Parâmetros
infos GceAvdInfo: o GceAvdInfo que descreve a instância.

avdConfigFile File: o arquivo de configuração avd

jsonKeyFile File: o arquivo de chave JSON da conta de serviço.

runUtil IRunUtil: um IRunUtil para executar comandos.

Retorna
String A saída do registro serial ou nulo se algo der errado.

getNestedDeviceSshBugreportz

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

Receba um relatório de bug via SSH para uma instância aninhada. Isso exige a solicitação do adb na instância virtual aninhada.

Parâmetros
gceAvd GceAvdInfo: o GceAvdInfo que descreve o dispositivo.

options TestDeviceOptions: um TestDeviceOptions que descreve as opções de dispositivo a serem usadas para o dispositivo GCE.

runUtil IRunUtil: um IRunUtil para executar comandos.

Retorna
File Um arquivo que aponta para o relatório de bugs zip ou nulo, se um problema tiver ocorrido.

Gera
IOException

Diretório de registros

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

Parâmetros
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)

Busque um arquivo remoto de uma instância aninhada e registre-o.

Parâmetros
logger ITestLogger: o ITestLogger em que o arquivo será registrado.

gceAvd GceAvdInfo: o GceAvdInfo que descreve o dispositivo.

options TestDeviceOptions: um TestDeviceOptions que descreve as opções de dispositivo a serem usadas para o dispositivo GCE.

runUtil IRunUtil: um IRunUtil para executar comandos.

remoteFilePath String: o caminho remoto onde encontrar o arquivo.

type LogDataType: o LogDataType do arquivo registrado.

Retorna
boolean se o arquivo foi registrado corretamente.

logNestedRemoteFile

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

Busque um arquivo remoto de uma instância aninhada e registre-o.

Parâmetros
logger ITestLogger: o ITestLogger em que o arquivo será registrado.

gceAvd GceAvdInfo: o GceAvdInfo que descreve o dispositivo.

options TestDeviceOptions: um TestDeviceOptions que descreve as opções de dispositivo a serem usadas para o dispositivo GCE.

runUtil IRunUtil: um IRunUtil para executar comandos.

remoteFilePath String: o caminho remoto onde encontrar o arquivo.

type LogDataType: o LogDataType do arquivo registrado.

baseName String: o nome base a ser usado para registrar o arquivo. Se nulo, o nome real do arquivo será usado.

Retorna
boolean se o arquivo foi registrado corretamente.

logSerialOutput

public void logSerialOutput (GceAvdInfo infos, 
                ITestLogger logger)

Registre a saída serial de um dispositivo descrito por GceAvdInfo.

Parâmetros
infos GceAvdInfo: o GceAvdInfo que descreve a instância.

logger ITestLogger: o ITestLogger em que o registro serial será registrado.

RemoteSshCommandExecution

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

Executar o comando remoto via SSH em uma instância.

Parâmetros
gceAvd GceAvdInfo: o GceAvdInfo que descreve o dispositivo.

options TestDeviceOptions: um TestDeviceOptions que descreve as opções de dispositivo a serem usadas para o dispositivo GCE.

runUtil IRunUtil: um IRunUtil para executar comandos.

timeoutMs long: tempo limite do comando em milissegundos. O valor 0 significa que não há tempo limite.

command String: o comando remoto a ser executado.

Retorna
CommandResult CommandResult contendo o resultado da execução.

desligamentoGce

public boolean shutdownGce ()

Encerre a instância do Gce associada ao startGce().

Retorna
boolean retorna verdadeiro se o encerramento do gce foi solicitado como sem bloqueio.

StartGce

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

Tente iniciar uma instância gce com Acloud ou Oxygen.

Parâmetros
ipDevice String: o IP inicial da instância do GCE em que o AVD será executado, null se não for aplicável

user String: o usuário do host que executa o AVD, null se não aplicável

offset Integer: o deslocamento de número do dispositivo do AVD no host, null se não aplicável

attributes MultiMap: atributos associados à invocação atual, usados para transmitir as informações aplicáveis à instância do GCE a serem adicionadas como metadados da VM

logger ITestLogger: o ITestLogger em que os registros de inicialização do dispositivo são registrados.

Retorna
GceAvdInfo um GceAvdInfo que descreve a instância do GCE. Pode ser uma instância BOOT_FAIL.

Gera
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

StartGce

public GceAvdInfo startGce ()

Retorna
GceAvdInfo

Gera
TargetSetupError

StartGce

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

Tente iniciar uma instância do gce.

Parâmetros
ipDevice String: o IP inicial da instância do GCE em que o AVD será executado, null se não for aplicável

attributes MultiMap: atributos associados à invocação atual, usados para transmitir as informações aplicáveis à instância do GCE a serem adicionadas como metadados da VM

Retorna
GceAvdInfo um GceAvdInfo que descreve a instância do GCE. Pode ser uma instância BOOT_FAIL.

Gera
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

StartGce

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

Tente iniciar uma instância gce com Acloud ou Oxygen.

Parâmetros
ipDevice String: o IP inicial da instância do GCE em que o AVD será executado, null se não for aplicável

user String: o usuário do host que executa o AVD, null se não aplicável

offset Integer: o deslocamento de número do dispositivo do AVD no host, null se não aplicável

attributes MultiMap: atributos associados à invocação atual, usados para transmitir as informações aplicáveis à instância do GCE a serem adicionadas como metadados da VM

Retorna
GceAvdInfo um GceAvdInfo que descreve a instância do GCE. Pode ser uma instância BOOT_FAIL.

Gera
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

startMultiDevicesGce

public  startMultiDevicesGce ( buildInfos)

Esse método foi descontinuado.
Remova depois que a ramificação mestre for atualizada.

Parâmetros
buildInfos

Retorna

Gera
TargetSetupError

startMultiDevicesGce

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

Tente iniciar a instância gce de vários dispositivos com Oxygen.

Parâmetros
buildInfos : ERROR(/List)

attributes MultiMap: atributos associados à invocação atual.

Retorna
um ERROR(/List) que descreve as informações de Avd do GCE.

Gera
TargetSetupError

Métodos protegidos

buildGceCmd

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

Crie e retorne o comando para iniciar o GCE. Exposto para teste.

Parâmetros
reportFile File

b IBuildInfo

ipDevice String

user String

offset Integer

attributes MultiMap

Retorna

buildShutdownCommand

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

Parâmetros
config File

options TestDeviceOptions

instanceName String

hostname String

isIpPreconfigured boolean

Retorna

extraçãoInstanceName

protected String extractInstanceName (String bootupLogs)

Extraia o nome da instância dos registros de inicialização do gce. Procure o padrão 'name': 'gce-' para extrair o nome dele. Extraímos dos registros em vez do arquivo de resultado porque, na falha de inicialização do gce, o nome da instância tentada não será mostrado no json.

Parâmetros
bootupLogs String

Retorna
String