GceManager
public
class
GceManager
extends Object
java.lang.Object
|
↳ |
com.android.tradefed.device.cloud.GceManager
|
Trình trợ giúp quản lý các lệnh gọi GCE để bắt đầu/dừng và thu thập nhật ký từ GCE.
Tóm tắt
Hàm khởi tạo công khai |
GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo)
Ctor
|
GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo, testResourceBuildInfos)
Hàm khởi tạo này không còn được dùng nữa.
Sử dụng các hàm khởi tạo khác, chúng tôi tạm thời giữ lại hàm khởi tạo này để có khả năng tương thích ngược.
|
GceManager(DeviceDescriptor deviceDesc, TestDeviceOptions deviceOptions, IBuildInfo buildInfo, String gceInstanceName, String gceHost)
Ctor, biến thể có thể được dùng để cung cấp tên thực thể GCE để sử dụng trực tiếp.
|
Phương thức công khai |
static
boolean
|
AcloudShutdown(TestDeviceOptions options, IRunUtil runUtil, String instanceName, String hostname, boolean isIpPreconfigured)
Chạy Acloud thực tế để tắt thiết bị ảo.
|
void
|
cleanUp()
|
static
File
|
getBugreportzWithSsh(GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil)
Nhận bugreportz từ thiết bị bằng cách sử dụng ssh để tránh mọi vấn đề tiềm ẩn về kết nối adb.
|
static
String
|
getInstanceSerialLog(GceAvdInfo infos, File avdConfigFile, File jsonKeyFile, IRunUtil runUtil)
Đọc nội dung hiện tại của nhật ký tuần tự của thực thể Gce Avd.
|
static
File
|
getNestedDeviceSshBugreportz(GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil)
Nhận báo cáo lỗi qua ssh cho một thực thể lồng nhau.
|
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)
Tìm nạp tệp từ xa từ một thực thể lồng nhau và ghi lại tệp đó.
|
static
boolean
|
logNestedRemoteFile(ITestLogger logger, GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil, String remoteFilePath, LogDataType type, String baseName)
Tìm nạp tệp từ xa từ một thực thể lồng nhau và ghi lại tệp đó.
|
void
|
logSerialOutput(GceAvdInfo infos, ITestLogger logger)
Ghi lại đầu ra nối tiếp của một thiết bị do GceAvdInfo mô tả.
|
static
CommandResult
|
remoteSshCommandExecution(GceAvdInfo gceAvd, TestDeviceOptions options, IRunUtil runUtil, long timeoutMs, String... command)
Thực thi lệnh từ xa qua ssh trên một thực thể.
|
boolean
|
shutdownGce()
Tắt thực thể Gce liên kết với startGce() .
|
GceAvdInfo
|
startGce(String ipDevice, String user, Integer offset, MultiMap<String, String> attributes, ITestLogger logger)
Cố gắng khởi động một phiên bản gce bằng Acloud hoặc Oxygen.
|
GceAvdInfo
|
startGce()
|
GceAvdInfo
|
startGce(String ipDevice, MultiMap<String, String> attributes)
Cố gắng khởi động một thực thể gce.
|
GceAvdInfo
|
startGce(String ipDevice, String user, Integer offset, MultiMap<String, String> attributes)
Cố gắng khởi động một phiên bản gce bằng Acloud hoặc Oxygen.
|
|
startMultiDevicesGce( buildInfos)
Phương thức này không còn được dùng nữa.
Hãy xoá phương thức này sau khi cập nhật nhánh chính.
|
|
startMultiDevicesGce( buildInfos, MultiMap<String, String> attributes)
Cố gắng khởi động thực thể gce trên nhiều thiết bị bằng Oxygen.
|
Trường
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
public static final String GCE_IP_PRECONFIGURED_KEY
Hàm khởi tạo công khai
GceManager
public GceManager (DeviceDescriptor deviceDesc,
TestDeviceOptions deviceOptions,
IBuildInfo buildInfo,
testResourceBuildInfos)
Hàm khởi tạo này không còn được dùng nữa.
Hãy sử dụng các hàm khởi tạo khác, chúng tôi tạm thời giữ lại hàm này để có khả năng tương thích ngược.
Tham số |
deviceDesc |
DeviceDescriptor |
deviceOptions |
TestDeviceOptions |
buildInfo |
IBuildInfo |
testResourceBuildInfos |
|
GceManager
public GceManager (DeviceDescriptor deviceDesc,
TestDeviceOptions deviceOptions,
IBuildInfo buildInfo,
String gceInstanceName,
String gceHost)
Ctor, biến thể có thể được dùng để cung cấp tên thực thể GCE để sử dụng trực tiếp.
Tham số |
deviceDesc |
DeviceDescriptor : DeviceDescriptor sẽ được liên kết với thiết bị GCE. |
deviceOptions |
TestDeviceOptions : TestDeviceOptions liên kết với thiết bị |
buildInfo |
IBuildInfo : IBuildInfo mô tả bản dựng gce để bắt đầu. |
gceInstanceName |
String : Tên thực thể cần sử dụng. |
gceHost |
String : Tên máy chủ lưu trữ hoặc ip của thực thể cần sử dụng. |
Phương thức công khai
Tắt đám mây
public static boolean AcloudShutdown (TestDeviceOptions options,
IRunUtil runUtil,
String instanceName,
String hostname,
boolean isIpPreconfigured)
Chạy Acloud thực tế để tắt thiết bị ảo.
Tham số |
options |
TestDeviceOptions : TestDeviceOptions cho các tuỳ chọn Acloud |
runUtil |
IRunUtil : IRunUtil để điều hành Acloud |
instanceName |
String : Thực thể cần tắt. |
hostname |
String : tên máy chủ của thực thể, chỉ dùng cho mực Oxygen. |
isIpPreconfigured |
boolean : liệu AVD có được tạo trên một thiết bị từ xa có IP được định cấu hình trước hay không |
Giá trị trả về |
boolean |
Đúng nếu thành công |
cleanUp
public void cleanUp ()
getBugreportzWithSsh
public static File getBugreportzWithSsh (GceAvdInfo gceAvd,
TestDeviceOptions options,
IRunUtil runUtil)
Tạo báo cáo lỗi từ thiết bị bằng cách sử dụng ssh để tránh mọi sự cố tiềm ẩn khi kết nối adb.
Tham số |
gceAvd |
GceAvdInfo : GceAvdInfo mô tả thiết bị. |
options |
TestDeviceOptions : TestDeviceOptions mô tả các tuỳ chọn thiết bị sẽ được sử dụng cho thiết bị GCE. |
runUtil |
IRunUtil : IRunUtil để thực thi các lệnh. |
Giá trị trả về |
File |
Một tệp trỏ đến báo cáo lỗi zip hoặc rỗng nếu xảy ra vấn đề. |
getInstanceSerialLog
public static String getInstanceSerialLog (GceAvdInfo infos,
File avdConfigFile,
File jsonKeyFile,
IRunUtil runUtil)
Đọc nội dung hiện tại của nhật ký nối tiếp của phiên bản Gce Avd.
Tham số |
infos |
GceAvdInfo : GceAvdInfo mô tả thực thể. |
avdConfigFile |
File : tệp cấu hình avd |
jsonKeyFile |
File : tệp khoá json của tài khoản dịch vụ. |
runUtil |
IRunUtil : IRunUtil để thực thi các lệnh. |
Giá trị trả về |
String |
Kết quả nhật ký tuần tự hoặc rỗng nếu có sự cố. |
getNestedDeviceSshBugreportz
public static File getNestedDeviceSshBugreportz (GceAvdInfo gceAvd,
TestDeviceOptions options,
IRunUtil runUtil)
Nhận báo cáo lỗi qua ssh cho một thực thể lồng nhau. Bạn cần yêu cầu adb trong thực thể ảo lồng nhau.
Tham số |
gceAvd |
GceAvdInfo : GceAvdInfo mô tả thiết bị. |
options |
TestDeviceOptions : TestDeviceOptions mô tả các tuỳ chọn thiết bị sẽ dùng cho thiết bị GCE. |
runUtil |
IRunUtil : IRunUtil để thực thi các lệnh. |
Giá trị trả về |
File |
Một tệp trỏ đến báo cáo lỗi zip hoặc rỗng nếu xảy ra vấn đề. |
tệp logAndDeleteFile
public static void logAndDeleteFile (File tempFile,
String dataName,
ITestLogger logger)
Tham số |
tempFile |
File |
dataName |
String |
logger |
ITestLogger |
logDirectory
public static void logDirectory (File remoteDirectory,
String baseName,
ITestLogger logger,
LogDataType type)
Tham số |
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)
Tìm nạp tệp từ xa từ một thực thể lồng nhau và ghi lại tệp đó.
Tham số |
logger |
ITestLogger : ITestLogger nơi ghi nhật ký tệp. |
gceAvd |
GceAvdInfo : GceAvdInfo mô tả thiết bị. |
options |
TestDeviceOptions : TestDeviceOptions mô tả các tuỳ chọn thiết bị sẽ được sử dụng cho thiết bị GCE. |
runUtil |
IRunUtil : IRunUtil để thực thi các lệnh. |
remoteFilePath |
String : Đường dẫn từ xa nơi tìm tệp. |
type |
LogDataType : LogDataType của tệp đã ghi. |
Giá trị trả về |
boolean |
xem tệp có được ghi nhật ký thành công hay không. |
logNestedRemoteFile
public static boolean logNestedRemoteFile (ITestLogger logger,
GceAvdInfo gceAvd,
TestDeviceOptions options,
IRunUtil runUtil,
String remoteFilePath,
LogDataType type,
String baseName)
Tìm nạp tệp từ xa từ một thực thể lồng nhau và ghi lại tệp đó.
Tham số |
logger |
ITestLogger : ITestLogger nơi ghi nhật ký tệp. |
gceAvd |
GceAvdInfo : GceAvdInfo mô tả thiết bị. |
options |
TestDeviceOptions : TestDeviceOptions mô tả các tuỳ chọn thiết bị sẽ được sử dụng cho thiết bị GCE. |
runUtil |
IRunUtil : IRunUtil để thực thi các lệnh. |
remoteFilePath |
String : Đường dẫn từ xa để tìm tệp. |
type |
LogDataType : LogDataType của tệp đã ghi. |
baseName |
String : Tên cơ sở để dùng ghi nhật ký tệp. Nếu giá trị này là rỗng, tên tệp thực tế sẽ được sử dụng. |
Giá trị trả về |
boolean |
xem tệp có được ghi nhật ký thành công hay không. |
remoteSshCommandExecution
public static CommandResult remoteSshCommandExecution (GceAvdInfo gceAvd,
TestDeviceOptions options,
IRunUtil runUtil,
long timeoutMs,
String... command)
Thực thi lệnh từ xa qua ssh trên một thực thể.
Tham số |
gceAvd |
GceAvdInfo : GceAvdInfo mô tả thiết bị. |
options |
TestDeviceOptions : TestDeviceOptions mô tả các tuỳ chọn thiết bị sẽ được sử dụng cho thiết bị GCE. |
runUtil |
IRunUtil : IRunUtil để thực thi các lệnh. |
timeoutMs |
long : Thời gian chờ tính bằng mili giây cho lệnh. 0 nghĩa là không có thời gian chờ. |
command |
String : Lệnh từ xa để thực thi. |
shutdownGce
public boolean shutdownGce ()
Tắt thực thể Gce được liên kết với startGce()
.
Giá trị trả về |
boolean |
trả về true nếu bạn yêu cầu tắt gce ở chế độ không chặn. |
startGce
public GceAvdInfo startGce (String ipDevice,
String user,
Integer offset,
MultiMap<String, String> attributes,
ITestLogger logger)
Cố gắng khởi động một phiên bản gce bằng Acloud hoặc Oxygen.
Tham số |
ipDevice |
String : địa chỉ IP ban đầu của phiên bản máy ảo GCE để chạy AVD, null nếu không áp dụng |
user |
String : người dùng đang chạy máy chủ của AVD, null nếu không áp dụng |
offset |
Integer : độ lệch số thiết bị của AVD trong máy chủ, null nếu không áp dụng |
attributes |
MultiMap : các thuộc tính liên kết với lệnh gọi hiện tại, dùng để truyền thông tin có liên quan xuống thực thể GCE để thêm dưới dạng siêu dữ liệu máy ảo |
logger |
ITestLogger : ITestLogger nơi để ghi nhật ký chạy thiết bị. |
startGce
public GceAvdInfo startGce (String ipDevice,
MultiMap<String, String> attributes)
Cố gắng khởi động một thực thể gce.
Tham số |
ipDevice |
String : địa chỉ IP ban đầu của phiên bản máy ảo GCE để chạy AVD, null nếu không áp dụng |
attributes |
MultiMap : các thuộc tính liên kết với lệnh gọi hiện tại, dùng để truyền thông tin có liên quan xuống thực thể GCE để thêm dưới dạng siêu dữ liệu máy ảo |
startGce
public GceAvdInfo startGce (String ipDevice,
String user,
Integer offset,
MultiMap<String, String> attributes)
Cố gắng khởi động một phiên bản gce bằng Acloud hoặc Oxygen.
Tham số |
ipDevice |
String : địa chỉ IP ban đầu của phiên bản máy ảo GCE để chạy AVD, null nếu không áp dụng |
user |
String : người dùng đang chạy máy chủ của AVD, null nếu không áp dụng |
offset |
Integer : độ lệch số thiết bị của AVD trong máy chủ, null nếu không áp dụng |
attributes |
MultiMap : các thuộc tính liên kết với lệnh gọi hiện tại, dùng để truyền thông tin có liên quan xuống thực thể GCE để thêm dưới dạng siêu dữ liệu máy ảo |
startMultiDevicesGce
public startMultiDevicesGce ( buildInfos)
Phương thức này không còn được dùng nữa.
Xoá phần này sau khi cập nhật nhánh chính.
startMultiDevicesGce
public startMultiDevicesGce ( buildInfos,
MultiMap<String, String> attributes)
Cố gắng khởi động thực thể gce trên nhiều thiết bị bằng Oxygen.
Tham số |
buildInfos |
: ERROR(/List) |
attributes |
MultiMap : các thuộc tính liên kết với lệnh gọi hiện tại |
Phương thức được bảo vệ
buildShutdownCommand
protected static buildShutdownCommand (File config,
TestDeviceOptions options,
String instanceName,
String hostname,
boolean isIpPreconfigured)
Tham số |
config |
File |
options |
TestDeviceOptions |
instanceName |
String |
hostname |
String |
isIpPreconfigured |
boolean |
protected String extractInstanceName (String bootupLogs)
Truy xuất tên thực thể từ nhật ký khởi động gce. Tìm mẫu "name": "gce-" để trích xuất tên của mẫu đó. Chúng tôi trích xuất từ nhật ký thay vì tệp kết quả vì khi khởi động gce không thành công, tên thực thể đã thử sẽ không xuất hiện trong tệp json.
Tham số |
bootupLogs |
String |