GceManager

public class GceManager
extends Object

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


ผู้ช่วยที่จัดการการเรียกใช้ GCE เพื่อเริ่ม/หยุดและรวบรวมบันทึกจาก GCE

สรุป

ช่อง

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

ตัวสร้างแบบสาธารณะ

GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo)

Ctor

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

ตัวสร้างนี้เลิกใช้งานแล้ว ใช้ตัวสร้างอื่นๆ เราจะเก็บไว้ชั่วคราวเพื่อใช้งานร่วมกับเวอร์ชันเก่าได้

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

Ctor ซึ่งเป็นตัวแปรที่สามารถใช้เพื่อระบุชื่ออินสแตนซ์ GCE เพื่อใช้งานโดยตรง

เมธอดสาธารณะ

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

Acloud จริงจะเรียกใช้เพื่อปิดอุปกรณ์เสมือน

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

รับ Bugreportz จากอุปกรณ์โดยใช้ SSH เพื่อหลีกเลี่ยงปัญหาที่อาจเกิดขึ้นในการเชื่อมต่อ adb

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

อ่านเนื้อหาปัจจุบันของบันทึกอนุกรมอินสแตนซ์ Gce Avd

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

รับรายงานข้อบกพร่องผ่าน ssh สำหรับอินสแตนซ์ที่ฝังอยู่

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)

ดึงไฟล์ระยะไกลจากอินสแตนซ์ที่ฝังอยู่และบันทึก

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

ดึงข้อมูลไฟล์ระยะไกลจากอินสแตนซ์ที่ฝังอยู่และบันทึก

void logSerialOutput(GceAvdInfo infos, ITestLogger logger)

บันทึกเอาต์พุตซีเรียลของอุปกรณ์ที่อธิบายโดย GceAvdInfo

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

เรียกใช้คำสั่งระยะไกลผ่าน SSH ในอินสแตนซ์

boolean shutdownGce()

ปิดอินสแตนซ์ GCE ที่เชื่อมโยงกับ startGce()

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

พยายามเริ่มอินสแตนซ์ GCE ด้วย Acloud หรือ Oxygen

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

พยายามเริ่มอินสแตนซ์ GCE

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

พยายามเริ่มอินสแตนซ์ GCE ด้วย Acloud หรือ Oxygen

startMultiDevicesGce( buildInfos)

เราเลิกใช้งานเมธอดนี้แล้ว นำออกหลังจากอัปเดตสาขาหลักแล้ว

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

พยายามเริ่มอินสแตนซ์ GCE หลายอุปกรณ์ด้วย Oxygen

วิธีการที่มีการป้องกัน

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

เรียกข้อมูลชื่ออินสแตนซ์จากบันทึกการบูต gce

ช่อง

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

ตัวสร้างแบบสาธารณะ

GceManager

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

Ctor

พารามิเตอร์
deviceDesc DeviceDescriptor: DeviceDescriptor ที่เชื่อมโยงกับอุปกรณ์ GCE

deviceOptions TestDeviceOptions: TestDeviceOptions ที่เชื่อมโยงกับอุปกรณ์

buildInfo IBuildInfo: IBuildInfo ที่อธิบายการสร้าง gce เพื่อเริ่มต้น

GceManager

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

ตัวสร้างนี้เลิกใช้งานแล้ว
ใช้ตัวสร้างอื่นๆ เราจะเก็บไว้ชั่วคราวเพื่อใช้งานร่วมกับเวอร์ชันเก่าได้

พารามิเตอร์
deviceDesc DeviceDescriptor

deviceOptions TestDeviceOptions

buildInfo IBuildInfo

testResourceBuildInfos

GceManager

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

Ctor รูปแบบที่ใช้เพื่อระบุชื่ออินสแตนซ์ GCE ที่จะใช้โดยตรง

พารามิเตอร์
deviceDesc DeviceDescriptor: DeviceDescriptor ที่เชื่อมโยงกับอุปกรณ์ GCE

deviceOptions TestDeviceOptions: TestDeviceOptions ที่เชื่อมโยงกับอุปกรณ์

buildInfo IBuildInfo: IBuildInfo ที่อธิบายการสร้าง gce เพื่อเริ่มต้น

gceInstanceName String: ชื่ออินสแตนซ์ที่จะใช้

gceHost String: ชื่อโฮสต์หรือ IP ของอินสแตนซ์ที่จะใช้

เมธอดสาธารณะ

AcloudShutdown

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

Acloud จริงทำงานเพื่อปิดอุปกรณ์เสมือน

พารามิเตอร์
options TestDeviceOptions: TestDeviceOptions สำหรับตัวเลือก Acloud

runUtil IRunUtil: IRunUtil ที่จะเรียกใช้ Acloud

instanceName String: อินสแตนซ์ที่จะปิด

hostname String: ชื่อโฮสต์ของอินสแตนซ์ ใช้สำหรับปลาหมึกออกซิเจนเท่านั้น

isIpPreconfigured boolean: มีการสร้างขึ้น AVD ในอุปกรณ์ระยะไกลที่มี IP ที่กําหนดค่าไว้ล่วงหน้าหรือไม่

คิกรีเทิร์น
boolean จริงหากสำเร็จ

cleanUp

public void cleanUp ()

getBugreportzWithSsh

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

รับรายงานข้อบกพร่องจากอุปกรณ์โดยใช้ ssh เพื่อหลีกเลี่ยงปัญหาที่อาจเกิดขึ้นกับการเชื่อมต่อ ADB

พารามิเตอร์
gceAvd GceAvdInfo: GceAvdInfo ที่อธิบายอุปกรณ์

options TestDeviceOptions: TestDeviceOptions ที่อธิบายตัวเลือกอุปกรณ์ที่จะใช้สำหรับอุปกรณ์ GCE

runUtil IRunUtil: IRunUtil เพื่อเรียกใช้คำสั่ง

คิกรีเทิร์น
File ไฟล์ที่ชี้ไปยังรายงานข้อบกพร่อง ZIP หรือเป็นค่าว่างหากเกิดปัญหา

โยน
IOException

getInstanceSerialLog

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

อ่านเนื้อหาปัจจุบันของบันทึกซีเรียลอินสแตนซ์ GCE Avd

พารามิเตอร์
infos GceAvdInfo: GceAvdInfo ที่อธิบายอินสแตนซ์

avdConfigFile File: ไฟล์กําหนดค่า avd

jsonKeyFile File: ไฟล์คีย์ JSON ของบัญชีบริการ

runUtil IRunUtil: IRunUtil เพื่อเรียกใช้คําสั่ง

คิกรีเทิร์น
String เอาต์พุตบันทึกซีเรียลหรือค่าว่างหากเกิดข้อผิดพลาด

getNestedDeviceSshBugreportz

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

รับรายงานข้อบกพร่องผ่าน ssh สำหรับอินสแตนซ์ที่ฝังอยู่ ซึ่งต้องมีการขอ adb ในอินสแตนซ์เสมือนที่ฝังอยู่

พารามิเตอร์
gceAvd GceAvdInfo: GceAvdInfo ที่อธิบายอุปกรณ์

options TestDeviceOptions: TestDeviceOptions ที่อธิบายตัวเลือกอุปกรณ์ที่จะใช้สำหรับอุปกรณ์ GCE

runUtil IRunUtil: IRunUtil เพื่อเรียกใช้คําสั่ง

คิกรีเทิร์น
File ไฟล์ที่ชี้ไปยังรายงานข้อบกพร่อง ZIP หรือเป็นค่าว่างหากเกิดปัญหา

โยน
IOException

logAndDeleteFile

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

พารามิเตอร์
tempFile File

dataName String

logger ITestLogger

ไดเรกทอรีบันทึก

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

พารามิเตอร์
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)

ดึงข้อมูลไฟล์ระยะไกลจากอินสแตนซ์ที่ฝังอยู่และบันทึก

พารามิเตอร์
logger ITestLogger: ITestLogger สำหรับบันทึกไฟล์

gceAvd GceAvdInfo: GceAvdInfo ที่อธิบายอุปกรณ์

options TestDeviceOptions: TestDeviceOptions ที่อธิบายตัวเลือกอุปกรณ์ที่จะใช้สำหรับอุปกรณ์ GCE

runUtil IRunUtil: IRunUtil เพื่อเรียกใช้คำสั่ง

remoteFilePath String: เส้นทางระยะไกลที่จะค้นหาไฟล์

type LogDataType: LogDataType ของไฟล์ที่บันทึกไว้

คิกรีเทิร์น
boolean บันทึกไฟล์สำเร็จหรือไม่

logNestedRemoteFile

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

ดึงข้อมูลไฟล์ระยะไกลจากอินสแตนซ์ที่ฝังอยู่และบันทึก

พารามิเตอร์
logger ITestLogger: ITestLogger ที่ใช้บันทึกไฟล์

gceAvd GceAvdInfo: GceAvdInfo ที่อธิบายอุปกรณ์

options TestDeviceOptions: TestDeviceOptions ที่อธิบายตัวเลือกอุปกรณ์ที่จะใช้สำหรับอุปกรณ์ GCE

runUtil IRunUtil: IRunUtil เพื่อเรียกใช้คําสั่ง

remoteFilePath String: เส้นทางระยะไกลที่จะค้นหาไฟล์

type LogDataType: LogDataType ของไฟล์ที่บันทึกไว้

baseName String: ชื่อพื้นฐานที่จะใช้ในการบันทึกไฟล์ หากเป็นค่า Null ระบบจะใช้ชื่อไฟล์จริง

คิกรีเทิร์น
boolean บันทึกไฟล์สําเร็จหรือไม่

logSerialOutput

public void logSerialOutput (GceAvdInfo infos, 
                ITestLogger logger)

บันทึกเอาต์พุตซีเรียลของอุปกรณ์ที่อธิบายโดย GceAvdInfo

พารามิเตอร์
infos GceAvdInfo: GceAvdInfo ที่อธิบายอินสแตนซ์

logger ITestLogger: ITestLogger สำหรับบันทึกบันทึกซีเรียล

remoteSshCommandExecution

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

เรียกใช้คำสั่งระยะไกลผ่าน ssh บนอินสแตนซ์

พารามิเตอร์
gceAvd GceAvdInfo: GceAvdInfo ที่อธิบายอุปกรณ์

options TestDeviceOptions: TestDeviceOptions ที่อธิบายตัวเลือกอุปกรณ์ที่จะใช้สำหรับอุปกรณ์ GCE

runUtil IRunUtil: IRunUtil เพื่อเรียกใช้คําสั่ง

timeoutMs long: ระยะหมดเวลาของคําสั่งเป็นมิลลิวินาที 0 หมายความว่าไม่มีการหมดเวลา

command String: คำสั่งระยะไกลที่จะดำเนินการ

คิกรีเทิร์น
CommandResult CommandResult ที่มีผลลัพธ์ของการดำเนินการ

shutdownGce

public boolean shutdownGce ()

ปิดอินสแตนซ์ Gce ที่เชื่อมโยงกับ startGce()

คิกรีเทิร์น
boolean แสดงค่า True หากขอให้ปิด gce เป็นแบบไม่บล็อก

startGce

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

พยายามเริ่มอินสแตนซ์ GCE ด้วย Acloud หรือ Oxygen

พารามิเตอร์
ipDevice String: IP เริ่มต้นของอินสแตนซ์ GCE ที่จะเรียกใช้ AVD, null หากไม่เกี่ยวข้อง

user String: โฮสต์ผู้ใช้ของ AVD, null หากไม่เกี่ยวข้อง

offset Integer: ระยะห่างของออฟเซตหมายเลขอุปกรณ์ของ AVD ในโฮสต์ null หากไม่เกี่ยวข้อง

attributes MultiMap: แอตทริบิวต์ที่เชื่อมโยงกับการเรียกใช้ปัจจุบัน ซึ่งใช้สำหรับการส่งข้อมูลที่สําคัญไปยังอินสแตนซ์ GCE เพื่อเพิ่มเป็นข้อมูลเมตาของ VM

logger ITestLogger: ITestLogger สำหรับจัดเก็บบันทึกการเปิดใช้งานอุปกรณ์

คิกรีเทิร์น
GceAvdInfo GceAvdInfo ที่อธิบายอินสแตนซ์ GCE อาจเป็นอินสแตนซ์ BOOT_FAIL

โยน
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

startGce

public GceAvdInfo startGce ()

คิกรีเทิร์น
GceAvdInfo

การขว้าง
TargetSetupError

startGce

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

ลองเริ่มต้นอินสแตนซ์ gce

พารามิเตอร์
ipDevice String: IP เริ่มต้นของอินสแตนซ์ GCE ที่จะเรียกใช้ AVD, null หากไม่เกี่ยวข้อง

attributes MultiMap: แอตทริบิวต์ที่เชื่อมโยงกับการเรียกใช้ปัจจุบัน ซึ่งใช้สำหรับการส่งข้อมูลที่สําคัญไปยังอินสแตนซ์ GCE เพื่อเพิ่มเป็นข้อมูลเมตาของ VM

คิกรีเทิร์น
GceAvdInfo GceAvdInfo ที่อธิบายอินสแตนซ์ GCE อาจเป็นอินสแตนซ์ BOOT_FAIL

โยน
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

startGce

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

พยายามเริ่มอินสแตนซ์ GCE ด้วย Acloud หรือ Oxygen

พารามิเตอร์
ipDevice String: IP เริ่มต้นของอินสแตนซ์ GCE ที่จะเรียกใช้ AVD, null หากไม่เกี่ยวข้อง

user String: โฮสต์ผู้ใช้ของ AVD, null หากไม่เกี่ยวข้อง

offset Integer: ระยะห่างของออฟเซตหมายเลขอุปกรณ์ของ AVD ในโฮสต์ null หากไม่เกี่ยวข้อง

attributes MultiMap: แอตทริบิวต์ที่เชื่อมโยงกับการเรียกใช้ปัจจุบัน ซึ่งใช้สำหรับการส่งข้อมูลที่สําคัญไปยังอินสแตนซ์ GCE เพื่อเพิ่มเป็นข้อมูลเมตาของ VM

คิกรีเทิร์น
GceAvdInfo GceAvdInfo ที่อธิบายอินสแตนซ์ GCE อาจเป็นอินสแตนซ์ BOOT_FAIL

โยน
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

เริ่มต้นหลายอุปกรณ์Gce

public  startMultiDevicesGce ( buildInfos)

วิธีการนี้เลิกใช้งานแล้ว
นําข้อมูลนี้ออกหลังจากอัปเดตสาขาหลัก

พารามิเตอร์
buildInfos

คิกรีเทิร์น

โยน
TargetSetupError

เริ่มต้นหลายอุปกรณ์Gce

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

พยายามเริ่มอินสแตนซ์ GCE หลายอุปกรณ์ด้วย Oxygen

พารามิเตอร์
buildInfos : ERROR(/List)

attributes MultiMap: แอตทริบิวต์ที่เชื่อมโยงกับการเรียกใช้ปัจจุบัน

คิกรีเทิร์น
ERROR(/List) ที่อธิบายข้อมูล Avd ของ GCE

โยน
TargetSetupError

วิธีการที่มีการป้องกัน

คำสั่ง BuildShutdownCommand

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

พารามิเตอร์
config File

options TestDeviceOptions

instanceName String

hostname String

isIpPreconfigured boolean

คิกรีเทิร์น

extractInstanceName

protected String extractInstanceName (String bootupLogs)

เรียกข้อมูลชื่ออินสแตนซ์จากบันทึกการบูต gce ค้นหารูปแบบ "name": "gce-" เพื่อดึงข้อมูลชื่อของรูปแบบ เราดึงข้อมูลจากบันทึกแทนไฟล์ผลลัพธ์เนื่องจากเมื่อบูต GCE ไม่สำเร็จ ชื่ออินสแตนซ์ที่พยายามจะสร้างจะไม่แสดงใน JSON

พารามิเตอร์
bootupLogs String

คิกรีเทิร์น
String