Support to provide emulator build target for remote goldfish instance
Insert emulator build target into GCE metadata for fetch_cvd to download
emulator images.
Bug: 235388356
Test: acloud-dev create --avd-type goldfish --build-target \
sdk_gphone_x86_64-userdebug --branch git_master
Change-Id: Ie25c75e40de53ad4e13ec4ab49f7cf46ed5f32c6
diff --git a/internal/lib/goldfish_compute_client.py b/internal/lib/goldfish_compute_client.py
index 33de884..9ae7922 100644
--- a/internal/lib/goldfish_compute_client.py
+++ b/internal/lib/goldfish_compute_client.py
@@ -159,6 +159,7 @@
kernel_build_target=None,
emulator_branch=None,
emulator_build_id=None,
+ emulator_build_target=None,
blank_data_disk_size_gb=None,
gpu=None,
avd_spec=None,
@@ -180,6 +181,7 @@
kernel_build_target: kernel target, e.g. "kernel_x86_64"
emulator_branch: String, emulator branch name, e.g."aosp-emu-master-dev"
emulator_build_id: String, emulator build id, a string, e.g. "2263051", "P2804227"
+ emulator_build_target: String, emulator build target.
blank_data_disk_size_gb: Integer, size of the blank data disk in GB.
gpu: String, GPU that should be attached to the instance, or None of no
acceleration is needed. e.g. "nvidia-tesla-k80"
@@ -220,6 +222,8 @@
metadata[
"cvd_01_fetch_emulator_bid"] = "{branch}/{build_id}".format(
branch=emulator_branch, build_id=emulator_build_id)
+ if emulator_build_target:
+ metadata["cvd_01_fetch_emulator_build_target"] = emulator_build_target
if launch_args:
metadata["launch_args"] = launch_args
metadata["cvd_01_launch"] = "1"
diff --git a/internal/lib/goldfish_compute_client_test.py b/internal/lib/goldfish_compute_client_test.py
index e0ab45d..02f649a 100644
--- a/internal/lib/goldfish_compute_client_test.py
+++ b/internal/lib/goldfish_compute_client_test.py
@@ -60,6 +60,7 @@
KERNEL_BUILD_ARTIFACT = "bzImage"
EMULATOR_BRANCH = "aosp-emu-master-dev"
EMULATOR_BUILD_ID = "1234567"
+ EMULATOR_BUILD_TARGET = "emulator-linux_x64_nolocationui"
DPI = 160
X_RES = 720
Y_RES = 1280
@@ -162,6 +163,7 @@
"{branch}/{build_id}".format(
branch=self.EMULATOR_BRANCH,
build_id=self.EMULATOR_BUILD_ID),
+ "cvd_01_fetch_emulator_build_target": self.EMULATOR_BUILD_TARGET,
"cvd_01_launch": "1",
"cvd_01_dpi": str(self.DPI),
"cvd_01_x_res": str(self.X_RES),
@@ -178,7 +180,9 @@
self.KERNEL_BUILD_ID,
self.KERNEL_BUILD_TARGET,
self.EMULATOR_BRANCH,
- self.EMULATOR_BUILD_ID, self.EXTRA_DATA_DISK_SIZE_GB, self.GPU,
+ self.EMULATOR_BUILD_ID,
+ self.EMULATOR_BUILD_TARGET,
+ self.EXTRA_DATA_DISK_SIZE_GB, self.GPU,
extra_scopes=self.EXTRA_SCOPES,
tags=self.TAGS,
launch_args=self.LAUNCH_ARGS)
@@ -218,6 +222,7 @@
"{branch}/{build_id}".format(
branch=self.EMULATOR_BRANCH,
build_id=self.EMULATOR_BUILD_ID),
+ "cvd_01_fetch_emulator_build_target": self.EMULATOR_BUILD_TARGET,
"cvd_01_launch": "1",
"display":
"{x}x{y} ({dpi})".format(
@@ -246,16 +251,12 @@
self.goldfish_compute_client.CreateInstance(
self.INSTANCE, self.IMAGE, self.IMAGE_PROJECT, self.TARGET,
- self.BRANCH, self.BUILD_ID,
- self.KERNEL_BRANCH,
- self.KERNEL_BUILD_ID,
- self.KERNEL_BUILD_TARGET,
- self.EMULATOR_BRANCH,
- self.EMULATOR_BUILD_ID, self.EXTRA_DATA_DISK_SIZE_GB, self.GPU,
- avd_spec=mock_avd_spec,
- extra_scopes=self.EXTRA_SCOPES,
- tags=self.TAGS,
- launch_args=self.LAUNCH_ARGS)
+ self.BRANCH, self.BUILD_ID, self.KERNEL_BRANCH,
+ self.KERNEL_BUILD_ID, self.KERNEL_BUILD_TARGET,
+ self.EMULATOR_BRANCH, self.EMULATOR_BUILD_ID,
+ self.EMULATOR_BUILD_TARGET, self.EXTRA_DATA_DISK_SIZE_GB, self.GPU,
+ avd_spec=mock_avd_spec, extra_scopes=self.EXTRA_SCOPES,
+ tags=self.TAGS, launch_args=self.LAUNCH_ARGS)
self._mock_create_instance.assert_called_with(
self.goldfish_compute_client,
diff --git a/public/actions/create_goldfish_action.py b/public/actions/create_goldfish_action.py
index 069b9d9..9210cce 100644
--- a/public/actions/create_goldfish_action.py
+++ b/public/actions/create_goldfish_action.py
@@ -159,6 +159,7 @@
build_id=self.build_info.build_id,
emulator_branch=self.emulator_build_info.branch,
emulator_build_id=self.emulator_build_info.build_id,
+ emulator_build_target=self.emulator_build_info.build_target,
kernel_branch=self.kernel_build_info.branch,
kernel_build_id=self.kernel_build_info.build_id,
kernel_build_target=self.kernel_build_info.build_target,
diff --git a/public/actions/create_goldfish_action_test.py b/public/actions/create_goldfish_action_test.py
index dbc47b5..7256231 100644
--- a/public/actions/create_goldfish_action_test.py
+++ b/public/actions/create_goldfish_action_test.py
@@ -144,6 +144,7 @@
build_id=self.BUILD_ID,
emulator_branch=self.EMULATOR_BRANCH,
emulator_build_id=self.EMULATOR_BUILD_ID,
+ emulator_build_target=self.EMULATOR_BUILD_TARGET,
kernel_branch=self.KERNEL_BRANCH,
kernel_build_id=self.KERNEL_BUILD_ID,
kernel_build_target=self.KERNEL_BUILD_TARGET,
@@ -201,6 +202,7 @@
build_id=self.BUILD_ID,
emulator_branch=self.EMULATOR_BRANCH,
emulator_build_id=self.EMULATOR_BUILD_ID,
+ emulator_build_target=self.EMULATOR_BUILD_TARGET,
kernel_branch=self.KERNEL_BRANCH,
kernel_build_id=self.KERNEL_BUILD_ID,
kernel_build_target=self.KERNEL_BUILD_TARGET,
@@ -266,6 +268,7 @@
build_id=self.BUILD_ID,
emulator_branch=self.EMULATOR_BRANCH,
emulator_build_id=self.EMULATOR_BUILD_ID,
+ emulator_build_target=self.EMULATOR_BUILD_TARGET,
kernel_branch=self.KERNEL_BRANCH,
kernel_build_id=self.KERNEL_BUILD_ID,
kernel_build_target=self.KERNEL_BUILD_TARGET,
@@ -321,6 +324,7 @@
build_id=self.BUILD_ID,
emulator_branch=self.EMULATOR_BRANCH,
emulator_build_id=self.EMULATOR_BUILD_ID,
+ emulator_build_target=self.EMULATOR_BUILD_TARGET,
kernel_branch=self.KERNEL_BRANCH,
kernel_build_id=self.KERNEL_BUILD_ID,
kernel_build_target=self.KERNEL_BUILD_TARGET,
@@ -379,6 +383,7 @@
build_id=self.BUILD_ID,
emulator_branch=self.EMULATOR_BRANCH,
emulator_build_id=self.EMULATOR_BUILD_ID,
+ emulator_build_target=self.EMULATOR_BUILD_TARGET,
kernel_branch=self.KERNEL_BRANCH,
kernel_build_id=self.KERNEL_BUILD_ID,
kernel_build_target=self.KERNEL_BUILD_TARGET,
@@ -434,6 +439,7 @@
build_id=self.BUILD_ID,
emulator_branch=self.EMULATOR_BRANCH,
emulator_build_id=self.EMULATOR_BUILD_ID,
+ emulator_build_target=self.EMULATOR_BUILD_TARGET,
kernel_branch=self.KERNEL_BRANCH,
kernel_build_id=self.KERNEL_BUILD_ID,
kernel_build_target=self.KERNEL_BUILD_TARGET,