@expo/build-tools 1.0.271 → 1.0.272

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,10 +4,41 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createStartCuttlefishDeviceBuildFunction = createStartCuttlefishDeviceBuildFunction;
7
+ const node_fs_1 = __importDefault(require("node:fs"));
8
+ const node_os_1 = __importDefault(require("node:os"));
9
+ const node_path_1 = __importDefault(require("node:path"));
7
10
  const steps_1 = require("@expo/steps");
8
11
  const turtle_spawn_1 = __importDefault(require("@expo/turtle-spawn"));
9
12
  const results_1 = require("@expo/results");
10
13
  const retry_1 = require("../../utils/retry");
14
+ // Needs to conform to https://github.com/google/android-cuttlefish/blob/928026d2833b3e326d9d3b4a9a477e522b37b825/base/cvd/cuttlefish/host/commands/cvd/cli/parser/load_config.proto#L29-L36.
15
+ // See example: https://github.com/google/android-cuttlefish/blob/928026d2833b3e326d9d3b4a9a477e522b37b825/base/cvd/cuttlefish/host/cvd_test_configs/main_phone.json
16
+ const CVD_CONFIG_JSON = {
17
+ common: {
18
+ host_package: '@ab/aosp-android-latest-release/aosp_cf_x86_64_only_phone-userdebug',
19
+ },
20
+ instances: [
21
+ {
22
+ '@import': 'phone',
23
+ graphics: {
24
+ displays: [
25
+ // Pixel 5
26
+ {
27
+ dpi: 432,
28
+ height: 2340,
29
+ width: 1080,
30
+ },
31
+ ],
32
+ },
33
+ vm: {
34
+ memory_mb: 4096,
35
+ },
36
+ disk: {
37
+ default_build: '@ab/aosp-main/aosp_cf_x86_64_phone-trunk_staging-userdebug',
38
+ },
39
+ },
40
+ ],
41
+ };
11
42
  function createStartCuttlefishDeviceBuildFunction() {
12
43
  return new steps_1.BuildFunction({
13
44
  namespace: 'eas',
@@ -23,7 +54,7 @@ function createStartCuttlefishDeviceBuildFunction() {
23
54
  }),
24
55
  ],
25
56
  fn: async ({ logger }, { env, inputs }) => {
26
- var _a;
57
+ var _a, _b;
27
58
  const count = Number((_a = inputs.count) !== null && _a !== void 0 ? _a : 1);
28
59
  const dependencyCheck = await (0, results_1.asyncResult)(Promise.all([(0, turtle_spawn_1.default)('docker', ['--version'], { env }), (0, turtle_spawn_1.default)('cvdr', ['--help'], { env })]));
29
60
  if (!dependencyCheck.ok) {
@@ -66,10 +97,18 @@ function createStartCuttlefishDeviceBuildFunction() {
66
97
  throw new Error('Timed out waiting for Cuttlefish Orchestrator to be ready.');
67
98
  }
68
99
  logger.info('Creating CVD');
69
- await (0, turtle_spawn_1.default)('cvdr', ['create', ...(count > 1 ? ['--num_instances', String(count)] : [])], {
70
- env,
71
- logger,
72
- });
100
+ const args = [];
101
+ const cvdConfigJson = (_b = env.CVD_CONFIG_JSON) !== null && _b !== void 0 ? _b : JSON.stringify(CVD_CONFIG_JSON);
102
+ if (cvdConfigJson) {
103
+ const configJsonDirectory = await node_fs_1.default.promises.mkdtemp(node_path_1.default.join(node_os_1.default.tmpdir(), 'start_cuttlefish-'));
104
+ const configJsonPath = node_path_1.default.join(configJsonDirectory, 'config.json');
105
+ await node_fs_1.default.promises.writeFile(configJsonPath, cvdConfigJson);
106
+ args.push(configJsonPath);
107
+ }
108
+ if (count > 1) {
109
+ args.push('--num_instances', String(count));
110
+ }
111
+ await (0, turtle_spawn_1.default)('cvdr', ['create', ...args], { env, logger });
73
112
  logger.info('Listing adb devices...');
74
113
  await (0, turtle_spawn_1.default)('adb', ['devices'], { env, logger });
75
114
  await (0, turtle_spawn_1.default)('adb', ['shell', 'input', 'keyevent', '82'], { env, logger });
@@ -1 +1 @@
1
- {"version":3,"file":"startCuttlefishDevice.js","sourceRoot":"","sources":["../../../src/steps/functions/startCuttlefishDevice.ts"],"names":[],"mappings":"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","sourcesContent":["import { BuildFunction, BuildStepInput, BuildStepInputValueTypeName } from '@expo/steps';\nimport spawn from '@expo/turtle-spawn';\nimport { asyncResult } from '@expo/results';\n\nimport { sleepAsync } from '../../utils/retry';\n\nexport function createStartCuttlefishDeviceBuildFunction(): BuildFunction {\n return new BuildFunction({\n namespace: 'eas',\n id: 'start_cuttlefish_device',\n name: 'Start Cuttlefish Device',\n __metricsId: 'eas/start_cuttlefish_device',\n inputProviders: [\n BuildStepInput.createProvider({\n id: 'count',\n required: false,\n defaultValue: 1,\n allowedValueTypeName: BuildStepInputValueTypeName.NUMBER,\n }),\n ],\n fn: async ({ logger }, { env, inputs }) => {\n const count = Number(inputs.count ?? 1);\n\n const dependencyCheck = await asyncResult(\n Promise.all([spawn('docker', ['--version'], { env }), spawn('cvdr', ['--help'], { env })])\n );\n if (!dependencyCheck.ok) {\n logger.error(\n dependencyCheck.reason,\n 'Cuttlefish requires Docker and cvdr, which are only available on the latest Android worker image. Add `image: latest` to your job configuration to use the latest image.'\n );\n throw new Error(\n 'Cuttlefish device start is only supported on the latest Android worker image.'\n );\n }\n\n logger.info('Starting adb server');\n await spawn('adb', ['start-server'], { env, logger });\n\n logger.info('Starting Cuttlefish Orchestrator container');\n\n await spawn(\n 'docker',\n [\n 'run',\n '--detach',\n '--name',\n 'cuttlefish-orchestrator',\n '--publish',\n '8080:8080',\n '--env',\n 'CONFIG_FILE=/conf.toml',\n '--volume',\n '/etc/cuttlefish/conf.toml:/conf.toml',\n '--volume',\n '/var/run/docker.sock:/var/run/docker.sock',\n '--tty',\n 'us-docker.pkg.dev/android-cuttlefish-artifacts/cuttlefish-orchestration/cuttlefish-cloud-orchestrator:unstable',\n ],\n { env, logger }\n );\n\n // Wait a minute tops for cvdr to be ready\n const readyDeadline = Date.now() + 60_000;\n let cvdrReady = false;\n while (Date.now() < readyDeadline) {\n const result = await asyncResult(spawn('cvdr', ['list'], { env }));\n if (result.ok) {\n cvdrReady = true;\n logger.info('Cuttlefish Orchestrator is ready!');\n break;\n }\n // Chekc every second\n await sleepAsync(1_000);\n }\n\n if (!cvdrReady) {\n throw new Error('Timed out waiting for Cuttlefish Orchestrator to be ready.');\n }\n\n logger.info('Creating CVD');\n await spawn('cvdr', ['create', ...(count > 1 ? ['--num_instances', String(count)] : [])], {\n env,\n logger,\n });\n\n logger.info('Listing adb devices...');\n await spawn('adb', ['devices'], { env, logger });\n await spawn('adb', ['shell', 'input', 'keyevent', '82'], { env, logger });\n },\n });\n}\n"]}
1
+ {"version":3,"file":"startCuttlefishDevice.js","sourceRoot":"","sources":["../../../src/steps/functions/startCuttlefishDevice.ts"],"names":[],"mappings":"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","sourcesContent":["import fs from 'node:fs';\nimport os from 'node:os';\nimport path from 'node:path';\n\nimport { BuildFunction, BuildStepInput, BuildStepInputValueTypeName } from '@expo/steps';\nimport spawn from '@expo/turtle-spawn';\nimport { asyncResult } from '@expo/results';\n\nimport { sleepAsync } from '../../utils/retry';\n\n// Needs to conform to https://github.com/google/android-cuttlefish/blob/928026d2833b3e326d9d3b4a9a477e522b37b825/base/cvd/cuttlefish/host/commands/cvd/cli/parser/load_config.proto#L29-L36.\n// See example: https://github.com/google/android-cuttlefish/blob/928026d2833b3e326d9d3b4a9a477e522b37b825/base/cvd/cuttlefish/host/cvd_test_configs/main_phone.json\nconst CVD_CONFIG_JSON = {\n common: {\n host_package: '@ab/aosp-android-latest-release/aosp_cf_x86_64_only_phone-userdebug',\n },\n instances: [\n {\n '@import': 'phone',\n graphics: {\n displays: [\n // Pixel 5\n {\n dpi: 432,\n height: 2340,\n width: 1080,\n },\n ],\n },\n vm: {\n memory_mb: 4096,\n },\n disk: {\n default_build: '@ab/aosp-main/aosp_cf_x86_64_phone-trunk_staging-userdebug',\n },\n },\n ],\n};\n\nexport function createStartCuttlefishDeviceBuildFunction(): BuildFunction {\n return new BuildFunction({\n namespace: 'eas',\n id: 'start_cuttlefish_device',\n name: 'Start Cuttlefish Device',\n __metricsId: 'eas/start_cuttlefish_device',\n inputProviders: [\n BuildStepInput.createProvider({\n id: 'count',\n required: false,\n defaultValue: 1,\n allowedValueTypeName: BuildStepInputValueTypeName.NUMBER,\n }),\n ],\n fn: async ({ logger }, { env, inputs }) => {\n const count = Number(inputs.count ?? 1);\n\n const dependencyCheck = await asyncResult(\n Promise.all([spawn('docker', ['--version'], { env }), spawn('cvdr', ['--help'], { env })])\n );\n if (!dependencyCheck.ok) {\n logger.error(\n dependencyCheck.reason,\n 'Cuttlefish requires Docker and cvdr, which are only available on the latest Android worker image. Add `image: latest` to your job configuration to use the latest image.'\n );\n throw new Error(\n 'Cuttlefish device start is only supported on the latest Android worker image.'\n );\n }\n\n logger.info('Starting adb server');\n await spawn('adb', ['start-server'], { env, logger });\n\n logger.info('Starting Cuttlefish Orchestrator container');\n\n await spawn(\n 'docker',\n [\n 'run',\n '--detach',\n '--name',\n 'cuttlefish-orchestrator',\n '--publish',\n '8080:8080',\n '--env',\n 'CONFIG_FILE=/conf.toml',\n '--volume',\n '/etc/cuttlefish/conf.toml:/conf.toml',\n '--volume',\n '/var/run/docker.sock:/var/run/docker.sock',\n '--tty',\n 'us-docker.pkg.dev/android-cuttlefish-artifacts/cuttlefish-orchestration/cuttlefish-cloud-orchestrator:unstable',\n ],\n { env, logger }\n );\n\n // Wait a minute tops for cvdr to be ready\n const readyDeadline = Date.now() + 60_000;\n let cvdrReady = false;\n while (Date.now() < readyDeadline) {\n const result = await asyncResult(spawn('cvdr', ['list'], { env }));\n if (result.ok) {\n cvdrReady = true;\n logger.info('Cuttlefish Orchestrator is ready!');\n break;\n }\n // Chekc every second\n await sleepAsync(1_000);\n }\n\n if (!cvdrReady) {\n throw new Error('Timed out waiting for Cuttlefish Orchestrator to be ready.');\n }\n\n logger.info('Creating CVD');\n\n const args = [];\n\n const cvdConfigJson = env.CVD_CONFIG_JSON ?? JSON.stringify(CVD_CONFIG_JSON);\n if (cvdConfigJson) {\n const configJsonDirectory = await fs.promises.mkdtemp(\n path.join(os.tmpdir(), 'start_cuttlefish-')\n );\n const configJsonPath = path.join(configJsonDirectory, 'config.json');\n await fs.promises.writeFile(configJsonPath, cvdConfigJson);\n args.push(configJsonPath);\n }\n\n if (count > 1) {\n args.push('--num_instances', String(count));\n }\n\n await spawn('cvdr', ['create', ...args], { env, logger });\n\n logger.info('Listing adb devices...');\n await spawn('adb', ['devices'], { env, logger });\n await spawn('adb', ['shell', 'input', 'keyevent', '82'], { env, logger });\n },\n });\n}\n"]}
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "url": "https://github.com/expo/eas-build.git",
6
6
  "directory": "packages/build-tools"
7
7
  },
8
- "version": "1.0.271",
8
+ "version": "1.0.272",
9
9
  "main": "dist/index.js",
10
10
  "types": "dist/index.d.ts",
11
11
  "files": [
@@ -91,5 +91,5 @@
91
91
  "node": "20.14.0",
92
92
  "yarn": "1.22.21"
93
93
  },
94
- "gitHead": "70864595ba2e0a0866025b574a30964f11bd91c4"
94
+ "gitHead": "c96deb59c7861a6f5dd033283a4f8cea179ae678"
95
95
  }