@expo/build-tools 1.0.160 → 1.0.162

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.
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const path_1 = __importDefault(require("path"));
7
7
  const eas_build_job_1 = require("@expo/eas-build-job");
8
8
  const nullthrows_1 = __importDefault(require("nullthrows"));
9
- const semver_1 = __importDefault(require("semver"));
10
9
  const context_1 = require("../context");
11
10
  const expoUpdates_1 = require("../utils/expoUpdates");
12
11
  const gradle_1 = require("../android/gradle");
@@ -37,7 +36,6 @@ async function androidBuilder(ctx) {
37
36
  }
38
37
  exports.default = androidBuilder;
39
38
  async function buildAsync(ctx) {
40
- var _a, _b;
41
39
  await (0, setup_1.setupAsync)(ctx);
42
40
  const hasNativeCode = ctx.job.type === eas_build_job_1.Workflow.GENERIC;
43
41
  if (hasNativeCode) {
@@ -89,9 +87,7 @@ async function buildAsync(ctx) {
89
87
  if (ctx.skipNativeBuild) {
90
88
  throw new context_1.SkipNativeBuildError('Skipping Gradle build');
91
89
  }
92
- if (!ctx.env.EAS_BUILD_DISABLE_BUNDLE_JAVASCRIPT_STEP &&
93
- ((_a = ctx.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
94
- semver_1.default.satisfies((_b = ctx.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')) {
90
+ if (!ctx.env.EAS_BUILD_DISABLE_BUNDLE_JAVASCRIPT_STEP && (0, eagerBundle_1.shouldUseEagerBundle)(ctx.metadata)) {
95
91
  await ctx.runBuildPhase(eas_build_job_1.BuildPhase.EAGER_BUNDLE, async () => {
96
92
  await (0, eagerBundle_1.eagerBundleAsync)({
97
93
  platform: ctx.job.platform,
@@ -1 +1 @@
1
- {"version":3,"file":"android.js","sourceRoot":"","sources":["../../src/builders/android.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\n\nimport { Android, BuildMode, BuildPhase, Workflow } from '@expo/eas-build-job';\nimport nullthrows from 'nullthrows';\nimport semver from 'semver';\n\nimport { Artifacts, BuildContext, SkipNativeBuildError } from '../context';\nimport {\n configureExpoUpdatesIfInstalledAsync,\n resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync,\n} from '../utils/expoUpdates';\nimport {\n runGradleCommand,\n ensureLFLineEndingsInGradlewScript,\n resolveGradleCommand,\n} from '../android/gradle';\nimport { uploadApplicationArchive } from '../utils/artifacts';\nimport { Hook, runHookIfPresent } from '../utils/hooks';\nimport { restoreCredentials } from '../android/credentials';\nimport { configureBuildGradle } from '../android/gradleConfig';\nimport { setupAsync } from '../common/setup';\nimport { prebuildAsync } from '../common/prebuild';\nimport { prepareExecutableAsync } from '../utils/prepareBuildExecutable';\nimport { eagerBundleAsync } from '../common/eagerBundle';\n\nimport { runBuilderWithHooksAsync } from './common';\nimport { runCustomBuildAsync } from './custom';\n\nexport default async function androidBuilder(ctx: BuildContext<Android.Job>): Promise<Artifacts> {\n if (ctx.job.mode === BuildMode.BUILD) {\n await prepareExecutableAsync(ctx);\n return await runBuilderWithHooksAsync(ctx, buildAsync);\n } else if (ctx.job.mode === BuildMode.RESIGN) {\n throw new Error('Not implemented');\n } else if (ctx.job.mode === BuildMode.CUSTOM || ctx.job.mode === BuildMode.REPACK) {\n return await runCustomBuildAsync(ctx);\n } else {\n throw new Error('Not implemented');\n }\n}\n\nasync function buildAsync(ctx: BuildContext<Android.Job>): Promise<void> {\n await setupAsync(ctx);\n const hasNativeCode = ctx.job.type === Workflow.GENERIC;\n\n if (hasNativeCode) {\n await ctx.runBuildPhase(BuildPhase.FIX_GRADLEW, async () => {\n await ensureLFLineEndingsInGradlewScript(ctx);\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.PREBUILD, async () => {\n if (hasNativeCode) {\n ctx.markBuildPhaseSkipped();\n ctx.logger.info(\n 'Skipped running \"expo prebuild\" because the \"android\" directory already exists. Learn more about the build process: https://docs.expo.dev/build-reference/android-builds/'\n );\n return;\n }\n await prebuildAsync(ctx, {\n logger: ctx.logger,\n workingDir: ctx.getReactNativeProjectDirectory(),\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.RESTORE_CACHE, async () => {\n await ctx.cacheManager?.restoreCache(ctx);\n });\n\n await ctx.runBuildPhase(BuildPhase.POST_INSTALL_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.POST_INSTALL);\n });\n\n const resolvedExpoUpdatesRuntimeVersion = await ctx.runBuildPhase(\n BuildPhase.CALCULATE_EXPO_UPDATES_RUNTIME_VERSION,\n async () => {\n return await resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync({\n cwd: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n appConfig: ctx.appConfig,\n platform: ctx.job.platform,\n workflow: ctx.job.type,\n env: ctx.env,\n });\n }\n );\n\n if (\n nullthrows(ctx.job.secrets, 'Secrets must be defined for non-custom builds').buildCredentials\n ) {\n await ctx.runBuildPhase(BuildPhase.PREPARE_CREDENTIALS, async () => {\n await restoreCredentials(ctx);\n await configureBuildGradle(ctx);\n });\n }\n await ctx.runBuildPhase(BuildPhase.CONFIGURE_EXPO_UPDATES, async () => {\n await configureExpoUpdatesIfInstalledAsync(ctx, {\n resolvedRuntimeVersion: resolvedExpoUpdatesRuntimeVersion?.runtimeVersion ?? null,\n resolvedFingerprintSources: resolvedExpoUpdatesRuntimeVersion?.fingerprintSources ?? null,\n });\n });\n\n if (ctx.skipNativeBuild) {\n throw new SkipNativeBuildError('Skipping Gradle build');\n }\n\n if (\n !ctx.env.EAS_BUILD_DISABLE_BUNDLE_JAVASCRIPT_STEP &&\n ctx.metadata?.sdkVersion &&\n semver.satisfies(ctx.metadata?.sdkVersion, '>=52')\n ) {\n await ctx.runBuildPhase(BuildPhase.EAGER_BUNDLE, async () => {\n await eagerBundleAsync({\n platform: ctx.job.platform,\n workingDir: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n env: {\n ...ctx.env,\n ...(resolvedExpoUpdatesRuntimeVersion?.runtimeVersion\n ? {\n EXPO_UPDATES_FINGERPRINT_OVERRIDE:\n resolvedExpoUpdatesRuntimeVersion?.runtimeVersion,\n EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,\n }\n : null),\n },\n packageManager: ctx.packageManager,\n });\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.RUN_GRADLEW, async () => {\n const gradleCommand = resolveGradleCommand(ctx.job);\n await runGradleCommand(ctx, {\n logger: ctx.logger,\n gradleCommand,\n androidDir: path.join(ctx.getReactNativeProjectDirectory(), 'android'),\n ...(resolvedExpoUpdatesRuntimeVersion?.runtimeVersion\n ? {\n extraEnv: {\n EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedExpoUpdatesRuntimeVersion.runtimeVersion,\n EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,\n },\n }\n : null),\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.PRE_UPLOAD_ARTIFACTS_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.PRE_UPLOAD_ARTIFACTS);\n });\n\n await ctx.runBuildPhase(BuildPhase.UPLOAD_APPLICATION_ARCHIVE, async () => {\n await uploadApplicationArchive(ctx, {\n patternOrPath: ctx.job.applicationArchivePath ?? 'android/app/build/outputs/**/*.{apk,aab}',\n rootDir: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.SAVE_CACHE, async () => {\n await ctx.cacheManager?.saveCache(ctx);\n });\n}\n"]}
1
+ {"version":3,"file":"android.js","sourceRoot":"","sources":["../../src/builders/android.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\n\nimport { Android, BuildMode, BuildPhase, Workflow } from '@expo/eas-build-job';\nimport nullthrows from 'nullthrows';\n\nimport { Artifacts, BuildContext, SkipNativeBuildError } from '../context';\nimport {\n configureExpoUpdatesIfInstalledAsync,\n resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync,\n} from '../utils/expoUpdates';\nimport {\n runGradleCommand,\n ensureLFLineEndingsInGradlewScript,\n resolveGradleCommand,\n} from '../android/gradle';\nimport { uploadApplicationArchive } from '../utils/artifacts';\nimport { Hook, runHookIfPresent } from '../utils/hooks';\nimport { restoreCredentials } from '../android/credentials';\nimport { configureBuildGradle } from '../android/gradleConfig';\nimport { setupAsync } from '../common/setup';\nimport { prebuildAsync } from '../common/prebuild';\nimport { prepareExecutableAsync } from '../utils/prepareBuildExecutable';\nimport { eagerBundleAsync, shouldUseEagerBundle } from '../common/eagerBundle';\n\nimport { runBuilderWithHooksAsync } from './common';\nimport { runCustomBuildAsync } from './custom';\n\nexport default async function androidBuilder(ctx: BuildContext<Android.Job>): Promise<Artifacts> {\n if (ctx.job.mode === BuildMode.BUILD) {\n await prepareExecutableAsync(ctx);\n return await runBuilderWithHooksAsync(ctx, buildAsync);\n } else if (ctx.job.mode === BuildMode.RESIGN) {\n throw new Error('Not implemented');\n } else if (ctx.job.mode === BuildMode.CUSTOM || ctx.job.mode === BuildMode.REPACK) {\n return await runCustomBuildAsync(ctx);\n } else {\n throw new Error('Not implemented');\n }\n}\n\nasync function buildAsync(ctx: BuildContext<Android.Job>): Promise<void> {\n await setupAsync(ctx);\n const hasNativeCode = ctx.job.type === Workflow.GENERIC;\n\n if (hasNativeCode) {\n await ctx.runBuildPhase(BuildPhase.FIX_GRADLEW, async () => {\n await ensureLFLineEndingsInGradlewScript(ctx);\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.PREBUILD, async () => {\n if (hasNativeCode) {\n ctx.markBuildPhaseSkipped();\n ctx.logger.info(\n 'Skipped running \"expo prebuild\" because the \"android\" directory already exists. Learn more about the build process: https://docs.expo.dev/build-reference/android-builds/'\n );\n return;\n }\n await prebuildAsync(ctx, {\n logger: ctx.logger,\n workingDir: ctx.getReactNativeProjectDirectory(),\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.RESTORE_CACHE, async () => {\n await ctx.cacheManager?.restoreCache(ctx);\n });\n\n await ctx.runBuildPhase(BuildPhase.POST_INSTALL_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.POST_INSTALL);\n });\n\n const resolvedExpoUpdatesRuntimeVersion = await ctx.runBuildPhase(\n BuildPhase.CALCULATE_EXPO_UPDATES_RUNTIME_VERSION,\n async () => {\n return await resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync({\n cwd: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n appConfig: ctx.appConfig,\n platform: ctx.job.platform,\n workflow: ctx.job.type,\n env: ctx.env,\n });\n }\n );\n\n if (\n nullthrows(ctx.job.secrets, 'Secrets must be defined for non-custom builds').buildCredentials\n ) {\n await ctx.runBuildPhase(BuildPhase.PREPARE_CREDENTIALS, async () => {\n await restoreCredentials(ctx);\n await configureBuildGradle(ctx);\n });\n }\n await ctx.runBuildPhase(BuildPhase.CONFIGURE_EXPO_UPDATES, async () => {\n await configureExpoUpdatesIfInstalledAsync(ctx, {\n resolvedRuntimeVersion: resolvedExpoUpdatesRuntimeVersion?.runtimeVersion ?? null,\n resolvedFingerprintSources: resolvedExpoUpdatesRuntimeVersion?.fingerprintSources ?? null,\n });\n });\n\n if (ctx.skipNativeBuild) {\n throw new SkipNativeBuildError('Skipping Gradle build');\n }\n\n if (!ctx.env.EAS_BUILD_DISABLE_BUNDLE_JAVASCRIPT_STEP && shouldUseEagerBundle(ctx.metadata)) {\n await ctx.runBuildPhase(BuildPhase.EAGER_BUNDLE, async () => {\n await eagerBundleAsync({\n platform: ctx.job.platform,\n workingDir: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n env: {\n ...ctx.env,\n ...(resolvedExpoUpdatesRuntimeVersion?.runtimeVersion\n ? {\n EXPO_UPDATES_FINGERPRINT_OVERRIDE:\n resolvedExpoUpdatesRuntimeVersion?.runtimeVersion,\n EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,\n }\n : null),\n },\n packageManager: ctx.packageManager,\n });\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.RUN_GRADLEW, async () => {\n const gradleCommand = resolveGradleCommand(ctx.job);\n await runGradleCommand(ctx, {\n logger: ctx.logger,\n gradleCommand,\n androidDir: path.join(ctx.getReactNativeProjectDirectory(), 'android'),\n ...(resolvedExpoUpdatesRuntimeVersion?.runtimeVersion\n ? {\n extraEnv: {\n EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedExpoUpdatesRuntimeVersion.runtimeVersion,\n EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,\n },\n }\n : null),\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.PRE_UPLOAD_ARTIFACTS_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.PRE_UPLOAD_ARTIFACTS);\n });\n\n await ctx.runBuildPhase(BuildPhase.UPLOAD_APPLICATION_ARCHIVE, async () => {\n await uploadApplicationArchive(ctx, {\n patternOrPath: ctx.job.applicationArchivePath ?? 'android/app/build/outputs/**/*.{apk,aab}',\n rootDir: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.SAVE_CACHE, async () => {\n await ctx.cacheManager?.saveCache(ctx);\n });\n}\n"]}
@@ -8,7 +8,6 @@ const config_plugins_1 = require("@expo/config-plugins");
8
8
  const eas_build_job_1 = require("@expo/eas-build-job");
9
9
  const fs_extra_1 = __importDefault(require("fs-extra"));
10
10
  const nullthrows_1 = __importDefault(require("nullthrows"));
11
- const semver_1 = __importDefault(require("semver"));
12
11
  const expoUpdates_1 = require("../utils/expoUpdates");
13
12
  const artifacts_1 = require("../utils/artifacts");
14
13
  const hooks_1 = require("../utils/hooks");
@@ -46,7 +45,6 @@ async function iosBuilder(ctx) {
46
45
  }
47
46
  exports.default = iosBuilder;
48
47
  async function buildAsync(ctx) {
49
- var _a, _b;
50
48
  await (0, setup_1.setupAsync)(ctx);
51
49
  const hasNativeCode = ctx.job.type === eas_build_job_1.Workflow.GENERIC;
52
50
  const credentialsManager = new manager_1.default(ctx);
@@ -102,9 +100,7 @@ async function buildAsync(ctx) {
102
100
  resolvedFingerprintSources: (_b = resolvedExpoUpdatesRuntimeVersion === null || resolvedExpoUpdatesRuntimeVersion === void 0 ? void 0 : resolvedExpoUpdatesRuntimeVersion.fingerprintSources) !== null && _b !== void 0 ? _b : null,
103
101
  });
104
102
  });
105
- if (!ctx.env.EAS_BUILD_DISABLE_BUNDLE_JAVASCRIPT_STEP &&
106
- ((_a = ctx.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
107
- semver_1.default.satisfies((_b = ctx.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')) {
103
+ if (!ctx.env.EAS_BUILD_DISABLE_BUNDLE_JAVASCRIPT_STEP && (0, eagerBundle_1.shouldUseEagerBundle)(ctx.metadata)) {
108
104
  await ctx.runBuildPhase(eas_build_job_1.BuildPhase.EAGER_BUNDLE, async () => {
109
105
  await (0, eagerBundle_1.eagerBundleAsync)({
110
106
  platform: ctx.job.platform,
@@ -1 +1 @@
1
- {"version":3,"file":"ios.js","sourceRoot":"","sources":["../../src/builders/ios.ts"],"names":[],"mappings":"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","sourcesContent":["import plist from '@expo/plist';\nimport { IOSConfig } from '@expo/config-plugins';\nimport { ManagedArtifactType, BuildMode, BuildPhase, Ios, Workflow } from '@expo/eas-build-job';\nimport fs from 'fs-extra';\nimport nullthrows from 'nullthrows';\nimport semver from 'semver';\n\nimport { Artifacts, BuildContext } from '../context';\nimport {\n resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync,\n configureExpoUpdatesIfInstalledAsync,\n} from '../utils/expoUpdates';\nimport { uploadApplicationArchive } from '../utils/artifacts';\nimport { Hook, runHookIfPresent } from '../utils/hooks';\nimport { configureXcodeProject } from '../ios/configure';\nimport CredentialsManager from '../ios/credentials/manager';\nimport { runFastlaneGym, runFastlaneResign } from '../ios/fastlane';\nimport { installPods } from '../ios/pod';\nimport { downloadApplicationArchiveAsync } from '../ios/resign';\nimport { resolveArtifactPath, resolveBuildConfiguration, resolveScheme } from '../ios/resolve';\nimport { setupAsync } from '../common/setup';\nimport { prebuildAsync } from '../common/prebuild';\nimport { prepareExecutableAsync } from '../utils/prepareBuildExecutable';\nimport { getParentAndDescendantProcessPidsAsync } from '../utils/processes';\nimport { eagerBundleAsync } from '../common/eagerBundle';\n\nimport { runBuilderWithHooksAsync } from './common';\nimport { runCustomBuildAsync } from './custom';\n\nconst INSTALL_PODS_WARN_TIMEOUT_MS = 15 * 60 * 1000; // 15 minutes\nconst INSTALL_PODS_KILL_TIMEOUT_MS = 30 * 60 * 1000; // 30 minutes\n\nclass InstallPodsTimeoutError extends Error {}\n\nexport default async function iosBuilder(ctx: BuildContext<Ios.Job>): Promise<Artifacts> {\n if (ctx.job.mode === BuildMode.BUILD) {\n await prepareExecutableAsync(ctx);\n return await runBuilderWithHooksAsync(ctx, buildAsync);\n } else if (ctx.job.mode === BuildMode.RESIGN) {\n return await resignAsync(ctx);\n } else if (ctx.job.mode === BuildMode.CUSTOM || ctx.job.mode === BuildMode.REPACK) {\n return await runCustomBuildAsync(ctx);\n } else {\n throw new Error('Not implemented');\n }\n}\n\nasync function buildAsync(ctx: BuildContext<Ios.Job>): Promise<void> {\n await setupAsync(ctx);\n const hasNativeCode = ctx.job.type === Workflow.GENERIC;\n\n const credentialsManager = new CredentialsManager(ctx);\n try {\n const credentials = await ctx.runBuildPhase(BuildPhase.PREPARE_CREDENTIALS, async () => {\n return await credentialsManager.prepare();\n });\n\n await ctx.runBuildPhase(BuildPhase.PREBUILD, async () => {\n if (hasNativeCode) {\n ctx.markBuildPhaseSkipped();\n ctx.logger.info(\n 'Skipped running \"expo prebuild\" because the \"ios\" directory already exists. Learn more about the build process: https://docs.expo.dev/build-reference/ios-builds/'\n );\n return;\n }\n const extraEnvs: Record<string, string> = credentials?.teamId\n ? { APPLE_TEAM_ID: credentials.teamId }\n : {};\n await prebuildAsync(ctx, {\n logger: ctx.logger,\n workingDir: ctx.getReactNativeProjectDirectory(),\n options: { extraEnvs },\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.RESTORE_CACHE, async () => {\n await ctx.cacheManager?.restoreCache(ctx);\n });\n\n await ctx.runBuildPhase(BuildPhase.INSTALL_PODS, async () => {\n await runInstallPodsAsync(ctx);\n });\n\n await ctx.runBuildPhase(BuildPhase.POST_INSTALL_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.POST_INSTALL);\n });\n\n const resolvedExpoUpdatesRuntimeVersion = await ctx.runBuildPhase(\n BuildPhase.CALCULATE_EXPO_UPDATES_RUNTIME_VERSION,\n async () => {\n return await resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync({\n cwd: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n appConfig: ctx.appConfig,\n platform: ctx.job.platform,\n workflow: ctx.job.type,\n env: ctx.env,\n });\n }\n );\n\n const buildConfiguration = resolveBuildConfiguration(ctx);\n if (credentials) {\n await ctx.runBuildPhase(BuildPhase.CONFIGURE_XCODE_PROJECT, async () => {\n await configureXcodeProject(ctx, { credentials, buildConfiguration });\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.CONFIGURE_EXPO_UPDATES, async () => {\n await configureExpoUpdatesIfInstalledAsync(ctx, {\n resolvedRuntimeVersion: resolvedExpoUpdatesRuntimeVersion?.runtimeVersion ?? null,\n resolvedFingerprintSources: resolvedExpoUpdatesRuntimeVersion?.fingerprintSources ?? null,\n });\n });\n\n if (\n !ctx.env.EAS_BUILD_DISABLE_BUNDLE_JAVASCRIPT_STEP &&\n ctx.metadata?.sdkVersion &&\n semver.satisfies(ctx.metadata?.sdkVersion, '>=52')\n ) {\n await ctx.runBuildPhase(BuildPhase.EAGER_BUNDLE, async () => {\n await eagerBundleAsync({\n platform: ctx.job.platform,\n workingDir: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n env: {\n ...ctx.env,\n ...(resolvedExpoUpdatesRuntimeVersion?.runtimeVersion\n ? {\n EXPO_UPDATES_FINGERPRINT_OVERRIDE:\n resolvedExpoUpdatesRuntimeVersion?.runtimeVersion,\n EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,\n }\n : null),\n },\n packageManager: ctx.packageManager,\n });\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.RUN_FASTLANE, async () => {\n const scheme = resolveScheme(ctx);\n const entitlements = await readEntitlementsAsync(ctx, { scheme, buildConfiguration });\n await runFastlaneGym(ctx, {\n credentials,\n scheme,\n buildConfiguration,\n entitlements,\n ...(resolvedExpoUpdatesRuntimeVersion?.runtimeVersion\n ? {\n extraEnv: {\n EXPO_UPDATES_FINGERPRINT_OVERRIDE:\n resolvedExpoUpdatesRuntimeVersion?.runtimeVersion,\n EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,\n },\n }\n : null),\n });\n });\n } finally {\n await ctx.runBuildPhase(BuildPhase.CLEAN_UP_CREDENTIALS, async () => {\n await credentialsManager.cleanUp();\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.PRE_UPLOAD_ARTIFACTS_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.PRE_UPLOAD_ARTIFACTS);\n });\n\n await ctx.runBuildPhase(BuildPhase.UPLOAD_APPLICATION_ARCHIVE, async () => {\n await uploadApplicationArchive(ctx, {\n patternOrPath: resolveArtifactPath(ctx),\n rootDir: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.SAVE_CACHE, async () => {\n await ctx.cacheManager?.saveCache(ctx);\n });\n}\n\nasync function readEntitlementsAsync(\n ctx: BuildContext<Ios.Job>,\n { scheme, buildConfiguration }: { scheme: string; buildConfiguration: string }\n): Promise<object | null> {\n try {\n const applicationTargetName =\n await IOSConfig.BuildScheme.getApplicationTargetNameForSchemeAsync(\n ctx.getReactNativeProjectDirectory(),\n scheme\n );\n const entitlementsPath = IOSConfig.Entitlements.getEntitlementsPath(\n ctx.getReactNativeProjectDirectory(),\n {\n buildConfiguration,\n targetName: applicationTargetName,\n }\n );\n if (!entitlementsPath) {\n return null;\n }\n const entitlementsRaw = await fs.readFile(entitlementsPath, 'utf8');\n return plist.parse(entitlementsRaw);\n } catch (err) {\n ctx.logger.warn({ err }, 'Failed to read entitlements');\n ctx.markBuildPhaseHasWarnings();\n return null;\n }\n}\n\nasync function resignAsync(ctx: BuildContext<Ios.Job>): Promise<Artifacts> {\n const applicationArchivePath = await ctx.runBuildPhase(\n BuildPhase.DOWNLOAD_APPLICATION_ARCHIVE,\n async () => {\n return await downloadApplicationArchiveAsync(ctx);\n }\n );\n\n const credentialsManager = new CredentialsManager(ctx);\n try {\n const credentials = await ctx.runBuildPhase(BuildPhase.PREPARE_CREDENTIALS, async () => {\n return await credentialsManager.prepare();\n });\n\n await ctx.runBuildPhase(BuildPhase.RUN_FASTLANE, async () => {\n await runFastlaneResign(ctx, {\n credentials: nullthrows(credentials),\n ipaPath: applicationArchivePath,\n });\n });\n } finally {\n await ctx.runBuildPhase(BuildPhase.CLEAN_UP_CREDENTIALS, async () => {\n await credentialsManager.cleanUp();\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.UPLOAD_APPLICATION_ARCHIVE, async () => {\n ctx.logger.info(`Application archive: ${applicationArchivePath}`);\n await ctx.uploadArtifact({\n artifact: {\n type: ManagedArtifactType.APPLICATION_ARCHIVE,\n paths: [applicationArchivePath],\n },\n logger: ctx.logger,\n });\n });\n\n if (!ctx.artifacts.APPLICATION_ARCHIVE) {\n throw new Error('Builder must upload application archive');\n }\n return ctx.artifacts;\n}\n\nasync function runInstallPodsAsync(ctx: BuildContext<Ios.Job>): Promise<void> {\n let warnTimeout: NodeJS.Timeout | undefined;\n let killTimeout: NodeJS.Timeout | undefined;\n let timedOutToKill: boolean = false;\n try {\n const installPodsSpawnPromise = (\n await installPods(ctx, {\n infoCallbackFn: () => {\n warnTimeout?.refresh();\n killTimeout?.refresh();\n },\n })\n ).spawnPromise;\n warnTimeout = setTimeout(() => {\n ctx.logger.warn(\n '\"Install pods\" phase takes longer then expected and it did not produce any logs in the past 15 minutes'\n );\n }, INSTALL_PODS_WARN_TIMEOUT_MS);\n\n killTimeout = setTimeout(async () => {\n timedOutToKill = true;\n ctx.logger.error(\n '\"Install pods\" phase takes a very long time and it did not produce any logs in the past 30 minutes. Most likely an unexpected error happened which caused the process to hang and it will be terminated'\n );\n const ppid = nullthrows(installPodsSpawnPromise.child.pid);\n const pids = await getParentAndDescendantProcessPidsAsync(ppid);\n pids.forEach((pid) => {\n process.kill(pid);\n });\n ctx.reportError?.('\"Install pods\" phase takes a very long time', undefined, {\n extras: { buildId: ctx.env.EAS_BUILD_ID },\n });\n }, INSTALL_PODS_KILL_TIMEOUT_MS);\n\n await installPodsSpawnPromise;\n } catch (err: any) {\n if (timedOutToKill) {\n throw new InstallPodsTimeoutError('\"Install pods\" phase was inactive for over 30 minutes');\n }\n throw err;\n } finally {\n if (warnTimeout) {\n clearTimeout(warnTimeout);\n }\n if (killTimeout) {\n clearTimeout(killTimeout);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"ios.js","sourceRoot":"","sources":["../../src/builders/ios.ts"],"names":[],"mappings":"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","sourcesContent":["import plist from '@expo/plist';\nimport { IOSConfig } from '@expo/config-plugins';\nimport { ManagedArtifactType, BuildMode, BuildPhase, Ios, Workflow } from '@expo/eas-build-job';\nimport fs from 'fs-extra';\nimport nullthrows from 'nullthrows';\n\nimport { Artifacts, BuildContext } from '../context';\nimport {\n resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync,\n configureExpoUpdatesIfInstalledAsync,\n} from '../utils/expoUpdates';\nimport { uploadApplicationArchive } from '../utils/artifacts';\nimport { Hook, runHookIfPresent } from '../utils/hooks';\nimport { configureXcodeProject } from '../ios/configure';\nimport CredentialsManager from '../ios/credentials/manager';\nimport { runFastlaneGym, runFastlaneResign } from '../ios/fastlane';\nimport { installPods } from '../ios/pod';\nimport { downloadApplicationArchiveAsync } from '../ios/resign';\nimport { resolveArtifactPath, resolveBuildConfiguration, resolveScheme } from '../ios/resolve';\nimport { setupAsync } from '../common/setup';\nimport { prebuildAsync } from '../common/prebuild';\nimport { prepareExecutableAsync } from '../utils/prepareBuildExecutable';\nimport { getParentAndDescendantProcessPidsAsync } from '../utils/processes';\nimport { eagerBundleAsync, shouldUseEagerBundle } from '../common/eagerBundle';\n\nimport { runBuilderWithHooksAsync } from './common';\nimport { runCustomBuildAsync } from './custom';\n\nconst INSTALL_PODS_WARN_TIMEOUT_MS = 15 * 60 * 1000; // 15 minutes\nconst INSTALL_PODS_KILL_TIMEOUT_MS = 30 * 60 * 1000; // 30 minutes\n\nclass InstallPodsTimeoutError extends Error {}\n\nexport default async function iosBuilder(ctx: BuildContext<Ios.Job>): Promise<Artifacts> {\n if (ctx.job.mode === BuildMode.BUILD) {\n await prepareExecutableAsync(ctx);\n return await runBuilderWithHooksAsync(ctx, buildAsync);\n } else if (ctx.job.mode === BuildMode.RESIGN) {\n return await resignAsync(ctx);\n } else if (ctx.job.mode === BuildMode.CUSTOM || ctx.job.mode === BuildMode.REPACK) {\n return await runCustomBuildAsync(ctx);\n } else {\n throw new Error('Not implemented');\n }\n}\n\nasync function buildAsync(ctx: BuildContext<Ios.Job>): Promise<void> {\n await setupAsync(ctx);\n const hasNativeCode = ctx.job.type === Workflow.GENERIC;\n\n const credentialsManager = new CredentialsManager(ctx);\n try {\n const credentials = await ctx.runBuildPhase(BuildPhase.PREPARE_CREDENTIALS, async () => {\n return await credentialsManager.prepare();\n });\n\n await ctx.runBuildPhase(BuildPhase.PREBUILD, async () => {\n if (hasNativeCode) {\n ctx.markBuildPhaseSkipped();\n ctx.logger.info(\n 'Skipped running \"expo prebuild\" because the \"ios\" directory already exists. Learn more about the build process: https://docs.expo.dev/build-reference/ios-builds/'\n );\n return;\n }\n const extraEnvs: Record<string, string> = credentials?.teamId\n ? { APPLE_TEAM_ID: credentials.teamId }\n : {};\n await prebuildAsync(ctx, {\n logger: ctx.logger,\n workingDir: ctx.getReactNativeProjectDirectory(),\n options: { extraEnvs },\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.RESTORE_CACHE, async () => {\n await ctx.cacheManager?.restoreCache(ctx);\n });\n\n await ctx.runBuildPhase(BuildPhase.INSTALL_PODS, async () => {\n await runInstallPodsAsync(ctx);\n });\n\n await ctx.runBuildPhase(BuildPhase.POST_INSTALL_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.POST_INSTALL);\n });\n\n const resolvedExpoUpdatesRuntimeVersion = await ctx.runBuildPhase(\n BuildPhase.CALCULATE_EXPO_UPDATES_RUNTIME_VERSION,\n async () => {\n return await resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync({\n cwd: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n appConfig: ctx.appConfig,\n platform: ctx.job.platform,\n workflow: ctx.job.type,\n env: ctx.env,\n });\n }\n );\n\n const buildConfiguration = resolveBuildConfiguration(ctx);\n if (credentials) {\n await ctx.runBuildPhase(BuildPhase.CONFIGURE_XCODE_PROJECT, async () => {\n await configureXcodeProject(ctx, { credentials, buildConfiguration });\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.CONFIGURE_EXPO_UPDATES, async () => {\n await configureExpoUpdatesIfInstalledAsync(ctx, {\n resolvedRuntimeVersion: resolvedExpoUpdatesRuntimeVersion?.runtimeVersion ?? null,\n resolvedFingerprintSources: resolvedExpoUpdatesRuntimeVersion?.fingerprintSources ?? null,\n });\n });\n\n if (!ctx.env.EAS_BUILD_DISABLE_BUNDLE_JAVASCRIPT_STEP && shouldUseEagerBundle(ctx.metadata)) {\n await ctx.runBuildPhase(BuildPhase.EAGER_BUNDLE, async () => {\n await eagerBundleAsync({\n platform: ctx.job.platform,\n workingDir: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n env: {\n ...ctx.env,\n ...(resolvedExpoUpdatesRuntimeVersion?.runtimeVersion\n ? {\n EXPO_UPDATES_FINGERPRINT_OVERRIDE:\n resolvedExpoUpdatesRuntimeVersion?.runtimeVersion,\n EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,\n }\n : null),\n },\n packageManager: ctx.packageManager,\n });\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.RUN_FASTLANE, async () => {\n const scheme = resolveScheme(ctx);\n const entitlements = await readEntitlementsAsync(ctx, { scheme, buildConfiguration });\n await runFastlaneGym(ctx, {\n credentials,\n scheme,\n buildConfiguration,\n entitlements,\n ...(resolvedExpoUpdatesRuntimeVersion?.runtimeVersion\n ? {\n extraEnv: {\n EXPO_UPDATES_FINGERPRINT_OVERRIDE:\n resolvedExpoUpdatesRuntimeVersion?.runtimeVersion,\n EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,\n },\n }\n : null),\n });\n });\n } finally {\n await ctx.runBuildPhase(BuildPhase.CLEAN_UP_CREDENTIALS, async () => {\n await credentialsManager.cleanUp();\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.PRE_UPLOAD_ARTIFACTS_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.PRE_UPLOAD_ARTIFACTS);\n });\n\n await ctx.runBuildPhase(BuildPhase.UPLOAD_APPLICATION_ARCHIVE, async () => {\n await uploadApplicationArchive(ctx, {\n patternOrPath: resolveArtifactPath(ctx),\n rootDir: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n });\n });\n\n await ctx.runBuildPhase(BuildPhase.SAVE_CACHE, async () => {\n await ctx.cacheManager?.saveCache(ctx);\n });\n}\n\nasync function readEntitlementsAsync(\n ctx: BuildContext<Ios.Job>,\n { scheme, buildConfiguration }: { scheme: string; buildConfiguration: string }\n): Promise<object | null> {\n try {\n const applicationTargetName =\n await IOSConfig.BuildScheme.getApplicationTargetNameForSchemeAsync(\n ctx.getReactNativeProjectDirectory(),\n scheme\n );\n const entitlementsPath = IOSConfig.Entitlements.getEntitlementsPath(\n ctx.getReactNativeProjectDirectory(),\n {\n buildConfiguration,\n targetName: applicationTargetName,\n }\n );\n if (!entitlementsPath) {\n return null;\n }\n const entitlementsRaw = await fs.readFile(entitlementsPath, 'utf8');\n return plist.parse(entitlementsRaw);\n } catch (err) {\n ctx.logger.warn({ err }, 'Failed to read entitlements');\n ctx.markBuildPhaseHasWarnings();\n return null;\n }\n}\n\nasync function resignAsync(ctx: BuildContext<Ios.Job>): Promise<Artifacts> {\n const applicationArchivePath = await ctx.runBuildPhase(\n BuildPhase.DOWNLOAD_APPLICATION_ARCHIVE,\n async () => {\n return await downloadApplicationArchiveAsync(ctx);\n }\n );\n\n const credentialsManager = new CredentialsManager(ctx);\n try {\n const credentials = await ctx.runBuildPhase(BuildPhase.PREPARE_CREDENTIALS, async () => {\n return await credentialsManager.prepare();\n });\n\n await ctx.runBuildPhase(BuildPhase.RUN_FASTLANE, async () => {\n await runFastlaneResign(ctx, {\n credentials: nullthrows(credentials),\n ipaPath: applicationArchivePath,\n });\n });\n } finally {\n await ctx.runBuildPhase(BuildPhase.CLEAN_UP_CREDENTIALS, async () => {\n await credentialsManager.cleanUp();\n });\n }\n\n await ctx.runBuildPhase(BuildPhase.UPLOAD_APPLICATION_ARCHIVE, async () => {\n ctx.logger.info(`Application archive: ${applicationArchivePath}`);\n await ctx.uploadArtifact({\n artifact: {\n type: ManagedArtifactType.APPLICATION_ARCHIVE,\n paths: [applicationArchivePath],\n },\n logger: ctx.logger,\n });\n });\n\n if (!ctx.artifacts.APPLICATION_ARCHIVE) {\n throw new Error('Builder must upload application archive');\n }\n return ctx.artifacts;\n}\n\nasync function runInstallPodsAsync(ctx: BuildContext<Ios.Job>): Promise<void> {\n let warnTimeout: NodeJS.Timeout | undefined;\n let killTimeout: NodeJS.Timeout | undefined;\n let timedOutToKill: boolean = false;\n try {\n const installPodsSpawnPromise = (\n await installPods(ctx, {\n infoCallbackFn: () => {\n warnTimeout?.refresh();\n killTimeout?.refresh();\n },\n })\n ).spawnPromise;\n warnTimeout = setTimeout(() => {\n ctx.logger.warn(\n '\"Install pods\" phase takes longer then expected and it did not produce any logs in the past 15 minutes'\n );\n }, INSTALL_PODS_WARN_TIMEOUT_MS);\n\n killTimeout = setTimeout(async () => {\n timedOutToKill = true;\n ctx.logger.error(\n '\"Install pods\" phase takes a very long time and it did not produce any logs in the past 30 minutes. Most likely an unexpected error happened which caused the process to hang and it will be terminated'\n );\n const ppid = nullthrows(installPodsSpawnPromise.child.pid);\n const pids = await getParentAndDescendantProcessPidsAsync(ppid);\n pids.forEach((pid) => {\n process.kill(pid);\n });\n ctx.reportError?.('\"Install pods\" phase takes a very long time', undefined, {\n extras: { buildId: ctx.env.EAS_BUILD_ID },\n });\n }, INSTALL_PODS_KILL_TIMEOUT_MS);\n\n await installPodsSpawnPromise;\n } catch (err: any) {\n if (timedOutToKill) {\n throw new InstallPodsTimeoutError('\"Install pods\" phase was inactive for over 30 minutes');\n }\n throw err;\n } finally {\n if (warnTimeout) {\n clearTimeout(warnTimeout);\n }\n if (killTimeout) {\n clearTimeout(killTimeout);\n }\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="bunyan" />
2
- import { Platform } from '@expo/eas-build-job';
2
+ import { Metadata, Platform } from '@expo/eas-build-job';
3
3
  import { bunyan } from '@expo/logger';
4
4
  import { PackageManager } from '../utils/packageManager';
5
5
  export declare function eagerBundleAsync({ platform, workingDir, logger, env, packageManager, }: {
@@ -9,3 +9,4 @@ export declare function eagerBundleAsync({ platform, workingDir, logger, env, pa
9
9
  env: Record<string, string | undefined>;
10
10
  packageManager: PackageManager;
11
11
  }): Promise<void>;
12
+ export declare function shouldUseEagerBundle(metadata: Metadata | null | undefined): boolean;
@@ -1,6 +1,10 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.eagerBundleAsync = void 0;
6
+ exports.shouldUseEagerBundle = exports.eagerBundleAsync = void 0;
7
+ const semver_1 = __importDefault(require("semver"));
4
8
  const project_1 = require("../utils/project");
5
9
  async function eagerBundleAsync({ platform, workingDir, logger, env, packageManager, }) {
6
10
  await (0, project_1.runExpoCliCommand)({
@@ -14,4 +18,10 @@ async function eagerBundleAsync({ platform, workingDir, logger, env, packageMana
14
18
  });
15
19
  }
16
20
  exports.eagerBundleAsync = eagerBundleAsync;
21
+ function shouldUseEagerBundle(metadata) {
22
+ return Boolean(!(metadata === null || metadata === void 0 ? void 0 : metadata.developmentClient) &&
23
+ (metadata === null || metadata === void 0 ? void 0 : metadata.sdkVersion) &&
24
+ semver_1.default.satisfies(metadata === null || metadata === void 0 ? void 0 : metadata.sdkVersion, '>=52'));
25
+ }
26
+ exports.shouldUseEagerBundle = shouldUseEagerBundle;
17
27
  //# sourceMappingURL=eagerBundle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"eagerBundle.js","sourceRoot":"","sources":["../../src/common/eagerBundle.ts"],"names":[],"mappings":";;;AAGA,8CAAqD;AAG9C,KAAK,UAAU,gBAAgB,CAAC,EACrC,QAAQ,EACR,UAAU,EACV,MAAM,EACN,GAAG,EACH,cAAc,GAOf;IACC,MAAM,IAAA,2BAAiB,EAAC;QACtB,IAAI,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;QAC3E,OAAO,EAAE;YACP,GAAG,EAAE,UAAU;YACf,MAAM;YACN,GAAG;SACJ;QACD,cAAc;KACf,CAAC,CAAC;AACL,CAAC;AAtBD,4CAsBC","sourcesContent":["import { Platform } from '@expo/eas-build-job';\nimport { bunyan } from '@expo/logger';\n\nimport { runExpoCliCommand } from '../utils/project';\nimport { PackageManager } from '../utils/packageManager';\n\nexport async function eagerBundleAsync({\n platform,\n workingDir,\n logger,\n env,\n packageManager,\n}: {\n platform: Platform;\n workingDir: string;\n logger: bunyan;\n env: Record<string, string | undefined>;\n packageManager: PackageManager;\n}): Promise<void> {\n await runExpoCliCommand({\n args: ['export:embed', '--eager', '--platform', platform, '--dev', 'false'],\n options: {\n cwd: workingDir,\n logger,\n env,\n },\n packageManager,\n });\n}\n"]}
1
+ {"version":3,"file":"eagerBundle.js","sourceRoot":"","sources":["../../src/common/eagerBundle.ts"],"names":[],"mappings":";;;;;;AAEA,oDAA4B;AAE5B,8CAAqD;AAG9C,KAAK,UAAU,gBAAgB,CAAC,EACrC,QAAQ,EACR,UAAU,EACV,MAAM,EACN,GAAG,EACH,cAAc,GAOf;IACC,MAAM,IAAA,2BAAiB,EAAC;QACtB,IAAI,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;QAC3E,OAAO,EAAE;YACP,GAAG,EAAE,UAAU;YACf,MAAM;YACN,GAAG;SACJ;QACD,cAAc;KACf,CAAC,CAAC;AACL,CAAC;AAtBD,4CAsBC;AAED,SAAgB,oBAAoB,CAAC,QAAqC;IACxE,OAAO,OAAO,CACZ,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,iBAAiB,CAAA;SAC1B,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,CAAA;QACpB,gBAAM,CAAC,SAAS,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,EAAE,MAAM,CAAC,CACjD,CAAC;AACJ,CAAC;AAND,oDAMC","sourcesContent":["import { Metadata, Platform } from '@expo/eas-build-job';\nimport { bunyan } from '@expo/logger';\nimport semver from 'semver';\n\nimport { runExpoCliCommand } from '../utils/project';\nimport { PackageManager } from '../utils/packageManager';\n\nexport async function eagerBundleAsync({\n platform,\n workingDir,\n logger,\n env,\n packageManager,\n}: {\n platform: Platform;\n workingDir: string;\n logger: bunyan;\n env: Record<string, string | undefined>;\n packageManager: PackageManager;\n}): Promise<void> {\n await runExpoCliCommand({\n args: ['export:embed', '--eager', '--platform', platform, '--dev', 'false'],\n options: {\n cwd: workingDir,\n logger,\n env,\n },\n packageManager,\n });\n}\n\nexport function shouldUseEagerBundle(metadata: Metadata | null | undefined): boolean {\n return Boolean(\n !metadata?.developmentClient &&\n metadata?.sdkVersion &&\n semver.satisfies(metadata?.sdkVersion, '>=52')\n );\n}\n"]}
@@ -81,7 +81,7 @@ async function setupAsync(ctx) {
81
81
  });
82
82
  }
83
83
  const hasExpoPackage = !!((_a = packageJson.dependencies) === null || _a === void 0 ? void 0 : _a.expo);
84
- if (hasExpoPackage) {
84
+ if (!ctx.env.EAS_BUILD_DISABLE_EXPO_DOCTOR_STEP && hasExpoPackage) {
85
85
  await ctx.runBuildPhase(eas_build_job_1.BuildPhase.RUN_EXPO_DOCTOR, async () => {
86
86
  try {
87
87
  const { stdout } = await runExpoDoctor(ctx);
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/common/setup.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\n\nimport spawn, { SpawnResult } from '@expo/turtle-spawn';\nimport fs from 'fs-extra';\nimport { BuildJob, BuildPhase, Ios, Job, Platform } from '@expo/eas-build-job';\nimport { BuildTrigger } from '@expo/eas-build-job/dist/common';\nimport nullthrows from 'nullthrows';\nimport { ExpoConfig } from '@expo/config';\nimport { UserFacingError } from '@expo/eas-build-job/dist/errors';\n\nimport { BuildContext } from '../context';\nimport { deleteXcodeEnvLocalIfExistsAsync } from '../ios/xcodeEnv';\nimport { Hook, runHookIfPresent } from '../utils/hooks';\nimport { setUpNpmrcAsync } from '../utils/npmrc';\nimport { isAtLeastNpm7Async } from '../utils/packageManager';\nimport { readPackageJson } from '../utils/project';\nimport { getParentAndDescendantProcessPidsAsync } from '../utils/processes';\n\nimport { prepareProjectSourcesAsync } from './projectSources';\nimport { installDependenciesAsync, resolvePackagerDir } from './installDependencies';\nimport { resolveEnvFromBuildProfileAsync, runEasBuildInternalAsync } from './easBuildInternal';\n\nconst MAX_EXPO_DOCTOR_TIMEOUT_MS = 30 * 1000;\nconst INSTALL_DEPENDENCIES_WARN_TIMEOUT_MS = 15 * 60 * 1000;\nconst INSTALL_DEPENDENCIES_KILL_TIMEOUT_MS = 30 * 60 * 1000;\n\nclass DoctorTimeoutError extends Error {}\nclass InstallDependenciesTimeoutError extends Error {}\n\nexport async function setupAsync<TJob extends BuildJob>(ctx: BuildContext<TJob>): Promise<void> {\n await ctx.runBuildPhase(BuildPhase.PREPARE_PROJECT, async () => {\n await prepareProjectSourcesAsync(ctx);\n await setUpNpmrcAsync(ctx, ctx.logger);\n if (ctx.job.platform === Platform.IOS && ctx.env.EAS_BUILD_RUNNER === 'eas-build') {\n await deleteXcodeEnvLocalIfExistsAsync(ctx as BuildContext<Ios.Job>);\n }\n if (ctx.job.triggeredBy === BuildTrigger.GIT_BASED_INTEGRATION) {\n // We need to setup envs from eas.json before\n // eas-build-pre-install hook is called.\n const env = await resolveEnvFromBuildProfileAsync(ctx, {\n cwd: ctx.getReactNativeProjectDirectory(),\n });\n ctx.updateEnv(env);\n }\n });\n\n await ctx.runBuildPhase(BuildPhase.PRE_INSTALL_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.PRE_INSTALL);\n });\n\n const packageJson = await ctx.runBuildPhase(BuildPhase.READ_PACKAGE_JSON, async () => {\n ctx.logger.info('Using package.json:');\n const packageJson = readPackageJson(ctx.getReactNativeProjectDirectory());\n ctx.logger.info(JSON.stringify(packageJson, null, 2));\n return packageJson;\n });\n\n await ctx.runBuildPhase(BuildPhase.INSTALL_DEPENDENCIES, async () => {\n await runInstallDependenciesAsync(ctx);\n });\n\n await ctx.runBuildPhase(BuildPhase.READ_APP_CONFIG, async () => {\n const appConfig = ctx.appConfig;\n ctx.logger.info('Using app configuration:');\n ctx.logger.info(JSON.stringify(appConfig, null, 2));\n await validateAppConfigAsync(ctx, appConfig);\n });\n\n if (ctx.job.triggeredBy === BuildTrigger.GIT_BASED_INTEGRATION) {\n await ctx.runBuildPhase(BuildPhase.EAS_BUILD_INTERNAL, async () => {\n if (!ctx.appConfig.ios?.bundleIdentifier && ctx.job.platform === Platform.IOS) {\n throw new Error(\n 'The \"ios.bundleIdentifier\" is required to be set in app config for builds triggered by GitHub integration. Learn more: https://docs.expo.dev/versions/latest/config/app/#bundleidentifier.'\n );\n }\n if (!ctx.appConfig.android?.package && ctx.job.platform === Platform.ANDROID) {\n throw new Error(\n 'The \"android.package\" is required to be set in app config for builds triggered by GitHub integration. Learn more: https://docs.expo.dev/versions/latest/config/app/#package.'\n );\n }\n const { newJob, newMetadata } = await runEasBuildInternalAsync({\n job: ctx.job,\n env: ctx.env,\n logger: ctx.logger,\n cwd: ctx.getReactNativeProjectDirectory(),\n });\n ctx.updateJobInformation(newJob, newMetadata);\n });\n }\n\n const hasExpoPackage = !!packageJson.dependencies?.expo;\n if (hasExpoPackage) {\n await ctx.runBuildPhase(BuildPhase.RUN_EXPO_DOCTOR, async () => {\n try {\n const { stdout } = await runExpoDoctor(ctx);\n if (!stdout.match(/Didn't find any issues with the project/)) {\n ctx.markBuildPhaseHasWarnings();\n }\n } catch (err) {\n if (err instanceof DoctorTimeoutError) {\n ctx.logger.error(err.message);\n } else {\n ctx.logger.error({ err }, 'Command \"expo doctor\" failed.');\n }\n ctx.markBuildPhaseHasWarnings();\n }\n });\n }\n}\n\nasync function runExpoDoctor<TJob extends Job>(ctx: BuildContext<TJob>): Promise<SpawnResult> {\n ctx.logger.info('Running \"expo doctor\"');\n let timeout: NodeJS.Timeout | undefined;\n let timedOut = false;\n const isAtLeastNpm7 = await isAtLeastNpm7Async();\n try {\n const argsPrefix = isAtLeastNpm7 ? ['-y'] : [];\n const promise = spawn('npx', [...argsPrefix, 'expo-doctor'], {\n cwd: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n env: ctx.env,\n });\n timeout = setTimeout(async () => {\n timedOut = true;\n const ppid = nullthrows(promise.child.pid);\n const pids = await getParentAndDescendantProcessPidsAsync(ppid);\n pids.forEach((pid) => {\n process.kill(pid);\n });\n ctx.reportError?.(`\"expo doctor\" timed out`, undefined, {\n extras: { buildId: ctx.env.EAS_BUILD_ID },\n });\n }, MAX_EXPO_DOCTOR_TIMEOUT_MS);\n return await promise;\n } catch (err: any) {\n if (timedOut) {\n throw new DoctorTimeoutError('\"expo doctor\" timed out, skipping...');\n }\n throw err;\n } finally {\n if (timeout) {\n clearTimeout(timeout);\n }\n }\n}\n\nasync function runInstallDependenciesAsync<TJob extends Job>(\n ctx: BuildContext<TJob>\n): Promise<void> {\n let warnTimeout: NodeJS.Timeout | undefined;\n let killTimeout: NodeJS.Timeout | undefined;\n let killTimedOut: boolean = false;\n try {\n const installDependenciesSpawnPromise = (\n await installDependenciesAsync(ctx, {\n logger: ctx.logger,\n infoCallbackFn: () => {\n if (warnTimeout) {\n warnTimeout.refresh();\n }\n if (killTimeout) {\n killTimeout.refresh();\n }\n },\n cwd: resolvePackagerDir(ctx),\n })\n ).spawnPromise;\n\n warnTimeout = setTimeout(() => {\n ctx.logger.warn(\n '\"Install dependencies\" phase takes longer then expected and it did not produce any logs in the past 15 minutes. Consider evaluating your package.json file for possible issues with dependencies'\n );\n }, INSTALL_DEPENDENCIES_WARN_TIMEOUT_MS);\n\n killTimeout = setTimeout(async () => {\n killTimedOut = true;\n ctx.logger.error(\n '\"Install dependencies\" phase takes a very long time and it did not produce any logs in the past 30 minutes. Most likely an unexpected error happened with your dependencies which caused the process to hang and it will be terminated'\n );\n const ppid = nullthrows(installDependenciesSpawnPromise.child.pid);\n const pids = await getParentAndDescendantProcessPidsAsync(ppid);\n pids.forEach((pid) => {\n process.kill(pid);\n });\n ctx.reportError?.('\"Install dependencies\" phase takes a very long time', undefined, {\n extras: { buildId: ctx.env.EAS_BUILD_ID },\n });\n }, INSTALL_DEPENDENCIES_KILL_TIMEOUT_MS);\n\n await installDependenciesSpawnPromise;\n } catch (err: any) {\n if (killTimedOut) {\n throw new InstallDependenciesTimeoutError(\n '\"Install dependencies\" phase was inactive for over 30 minutes. Please evaluate your package.json file'\n );\n }\n throw err;\n } finally {\n if (warnTimeout) {\n clearTimeout(warnTimeout);\n }\n if (killTimeout) {\n clearTimeout(killTimeout);\n }\n }\n}\n\nasync function validateAppConfigAsync(\n ctx: BuildContext<Job>,\n appConfig: ExpoConfig\n): Promise<void> {\n if (\n appConfig?.extra?.eas?.projectId &&\n ctx.env.EAS_BUILD_PROJECT_ID &&\n appConfig.extra.eas.projectId !== ctx.env.EAS_BUILD_PROJECT_ID\n ) {\n const isUsingDynamicConfig =\n (await fs.pathExists(path.join(ctx.getReactNativeProjectDirectory(), 'app.config.ts'))) ||\n (await fs.pathExists(path.join(ctx.getReactNativeProjectDirectory(), 'app.config.js')));\n const isGitHubBuild = ctx.job.triggeredBy === BuildTrigger.GIT_BASED_INTEGRATION;\n let extraMessage = '';\n if (isGitHubBuild && isUsingDynamicConfig) {\n extraMessage =\n 'Make sure you connected your GitHub repository to the correct Expo project and if you are using environment variables to switch between projects in app.config.js/app.config.ts remember to set those variables in eas.json too. ';\n } else if (isGitHubBuild) {\n extraMessage = 'Make sure you connected your GitHub repository to the correct Expo project. ';\n } else if (isUsingDynamicConfig) {\n extraMessage =\n 'If you are using environment variables to switch between projects in app.config.js/app.config.ts, make sure those variables are also set inside EAS Build. You can do that using \"env\" field in eas.json or EAS Secrets. ';\n }\n throw new UserFacingError(\n 'EAS_BUILD_PROJECT_ID_MISMATCH',\n `The value of the \"extra.eas.projectId\" field (${appConfig.extra.eas.projectId}) in the app config does not match the current project id (${ctx.env.EAS_BUILD_PROJECT_ID}). ${extraMessage}Learn more: https://expo.fyi/eas-config-mismatch.`\n );\n } else if (ctx.env.EAS_BUILD_PROJECT_ID && !appConfig?.extra?.eas?.projectId) {\n ctx.logger.error(`The \"extra.eas.projectId\" field is missing from your app config.`);\n ctx.markBuildPhaseHasWarnings();\n }\n}\n"]}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/common/setup.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\n\nimport spawn, { SpawnResult } from '@expo/turtle-spawn';\nimport fs from 'fs-extra';\nimport { BuildJob, BuildPhase, Ios, Job, Platform } from '@expo/eas-build-job';\nimport { BuildTrigger } from '@expo/eas-build-job/dist/common';\nimport nullthrows from 'nullthrows';\nimport { ExpoConfig } from '@expo/config';\nimport { UserFacingError } from '@expo/eas-build-job/dist/errors';\n\nimport { BuildContext } from '../context';\nimport { deleteXcodeEnvLocalIfExistsAsync } from '../ios/xcodeEnv';\nimport { Hook, runHookIfPresent } from '../utils/hooks';\nimport { setUpNpmrcAsync } from '../utils/npmrc';\nimport { isAtLeastNpm7Async } from '../utils/packageManager';\nimport { readPackageJson } from '../utils/project';\nimport { getParentAndDescendantProcessPidsAsync } from '../utils/processes';\n\nimport { prepareProjectSourcesAsync } from './projectSources';\nimport { installDependenciesAsync, resolvePackagerDir } from './installDependencies';\nimport { resolveEnvFromBuildProfileAsync, runEasBuildInternalAsync } from './easBuildInternal';\n\nconst MAX_EXPO_DOCTOR_TIMEOUT_MS = 30 * 1000;\nconst INSTALL_DEPENDENCIES_WARN_TIMEOUT_MS = 15 * 60 * 1000;\nconst INSTALL_DEPENDENCIES_KILL_TIMEOUT_MS = 30 * 60 * 1000;\n\nclass DoctorTimeoutError extends Error {}\nclass InstallDependenciesTimeoutError extends Error {}\n\nexport async function setupAsync<TJob extends BuildJob>(ctx: BuildContext<TJob>): Promise<void> {\n await ctx.runBuildPhase(BuildPhase.PREPARE_PROJECT, async () => {\n await prepareProjectSourcesAsync(ctx);\n await setUpNpmrcAsync(ctx, ctx.logger);\n if (ctx.job.platform === Platform.IOS && ctx.env.EAS_BUILD_RUNNER === 'eas-build') {\n await deleteXcodeEnvLocalIfExistsAsync(ctx as BuildContext<Ios.Job>);\n }\n if (ctx.job.triggeredBy === BuildTrigger.GIT_BASED_INTEGRATION) {\n // We need to setup envs from eas.json before\n // eas-build-pre-install hook is called.\n const env = await resolveEnvFromBuildProfileAsync(ctx, {\n cwd: ctx.getReactNativeProjectDirectory(),\n });\n ctx.updateEnv(env);\n }\n });\n\n await ctx.runBuildPhase(BuildPhase.PRE_INSTALL_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.PRE_INSTALL);\n });\n\n const packageJson = await ctx.runBuildPhase(BuildPhase.READ_PACKAGE_JSON, async () => {\n ctx.logger.info('Using package.json:');\n const packageJson = readPackageJson(ctx.getReactNativeProjectDirectory());\n ctx.logger.info(JSON.stringify(packageJson, null, 2));\n return packageJson;\n });\n\n await ctx.runBuildPhase(BuildPhase.INSTALL_DEPENDENCIES, async () => {\n await runInstallDependenciesAsync(ctx);\n });\n\n await ctx.runBuildPhase(BuildPhase.READ_APP_CONFIG, async () => {\n const appConfig = ctx.appConfig;\n ctx.logger.info('Using app configuration:');\n ctx.logger.info(JSON.stringify(appConfig, null, 2));\n await validateAppConfigAsync(ctx, appConfig);\n });\n\n if (ctx.job.triggeredBy === BuildTrigger.GIT_BASED_INTEGRATION) {\n await ctx.runBuildPhase(BuildPhase.EAS_BUILD_INTERNAL, async () => {\n if (!ctx.appConfig.ios?.bundleIdentifier && ctx.job.platform === Platform.IOS) {\n throw new Error(\n 'The \"ios.bundleIdentifier\" is required to be set in app config for builds triggered by GitHub integration. Learn more: https://docs.expo.dev/versions/latest/config/app/#bundleidentifier.'\n );\n }\n if (!ctx.appConfig.android?.package && ctx.job.platform === Platform.ANDROID) {\n throw new Error(\n 'The \"android.package\" is required to be set in app config for builds triggered by GitHub integration. Learn more: https://docs.expo.dev/versions/latest/config/app/#package.'\n );\n }\n const { newJob, newMetadata } = await runEasBuildInternalAsync({\n job: ctx.job,\n env: ctx.env,\n logger: ctx.logger,\n cwd: ctx.getReactNativeProjectDirectory(),\n });\n ctx.updateJobInformation(newJob, newMetadata);\n });\n }\n\n const hasExpoPackage = !!packageJson.dependencies?.expo;\n if (!ctx.env.EAS_BUILD_DISABLE_EXPO_DOCTOR_STEP && hasExpoPackage) {\n await ctx.runBuildPhase(BuildPhase.RUN_EXPO_DOCTOR, async () => {\n try {\n const { stdout } = await runExpoDoctor(ctx);\n if (!stdout.match(/Didn't find any issues with the project/)) {\n ctx.markBuildPhaseHasWarnings();\n }\n } catch (err) {\n if (err instanceof DoctorTimeoutError) {\n ctx.logger.error(err.message);\n } else {\n ctx.logger.error({ err }, 'Command \"expo doctor\" failed.');\n }\n ctx.markBuildPhaseHasWarnings();\n }\n });\n }\n}\n\nasync function runExpoDoctor<TJob extends Job>(ctx: BuildContext<TJob>): Promise<SpawnResult> {\n ctx.logger.info('Running \"expo doctor\"');\n let timeout: NodeJS.Timeout | undefined;\n let timedOut = false;\n const isAtLeastNpm7 = await isAtLeastNpm7Async();\n try {\n const argsPrefix = isAtLeastNpm7 ? ['-y'] : [];\n const promise = spawn('npx', [...argsPrefix, 'expo-doctor'], {\n cwd: ctx.getReactNativeProjectDirectory(),\n logger: ctx.logger,\n env: ctx.env,\n });\n timeout = setTimeout(async () => {\n timedOut = true;\n const ppid = nullthrows(promise.child.pid);\n const pids = await getParentAndDescendantProcessPidsAsync(ppid);\n pids.forEach((pid) => {\n process.kill(pid);\n });\n ctx.reportError?.(`\"expo doctor\" timed out`, undefined, {\n extras: { buildId: ctx.env.EAS_BUILD_ID },\n });\n }, MAX_EXPO_DOCTOR_TIMEOUT_MS);\n return await promise;\n } catch (err: any) {\n if (timedOut) {\n throw new DoctorTimeoutError('\"expo doctor\" timed out, skipping...');\n }\n throw err;\n } finally {\n if (timeout) {\n clearTimeout(timeout);\n }\n }\n}\n\nasync function runInstallDependenciesAsync<TJob extends Job>(\n ctx: BuildContext<TJob>\n): Promise<void> {\n let warnTimeout: NodeJS.Timeout | undefined;\n let killTimeout: NodeJS.Timeout | undefined;\n let killTimedOut: boolean = false;\n try {\n const installDependenciesSpawnPromise = (\n await installDependenciesAsync(ctx, {\n logger: ctx.logger,\n infoCallbackFn: () => {\n if (warnTimeout) {\n warnTimeout.refresh();\n }\n if (killTimeout) {\n killTimeout.refresh();\n }\n },\n cwd: resolvePackagerDir(ctx),\n })\n ).spawnPromise;\n\n warnTimeout = setTimeout(() => {\n ctx.logger.warn(\n '\"Install dependencies\" phase takes longer then expected and it did not produce any logs in the past 15 minutes. Consider evaluating your package.json file for possible issues with dependencies'\n );\n }, INSTALL_DEPENDENCIES_WARN_TIMEOUT_MS);\n\n killTimeout = setTimeout(async () => {\n killTimedOut = true;\n ctx.logger.error(\n '\"Install dependencies\" phase takes a very long time and it did not produce any logs in the past 30 minutes. Most likely an unexpected error happened with your dependencies which caused the process to hang and it will be terminated'\n );\n const ppid = nullthrows(installDependenciesSpawnPromise.child.pid);\n const pids = await getParentAndDescendantProcessPidsAsync(ppid);\n pids.forEach((pid) => {\n process.kill(pid);\n });\n ctx.reportError?.('\"Install dependencies\" phase takes a very long time', undefined, {\n extras: { buildId: ctx.env.EAS_BUILD_ID },\n });\n }, INSTALL_DEPENDENCIES_KILL_TIMEOUT_MS);\n\n await installDependenciesSpawnPromise;\n } catch (err: any) {\n if (killTimedOut) {\n throw new InstallDependenciesTimeoutError(\n '\"Install dependencies\" phase was inactive for over 30 minutes. Please evaluate your package.json file'\n );\n }\n throw err;\n } finally {\n if (warnTimeout) {\n clearTimeout(warnTimeout);\n }\n if (killTimeout) {\n clearTimeout(killTimeout);\n }\n }\n}\n\nasync function validateAppConfigAsync(\n ctx: BuildContext<Job>,\n appConfig: ExpoConfig\n): Promise<void> {\n if (\n appConfig?.extra?.eas?.projectId &&\n ctx.env.EAS_BUILD_PROJECT_ID &&\n appConfig.extra.eas.projectId !== ctx.env.EAS_BUILD_PROJECT_ID\n ) {\n const isUsingDynamicConfig =\n (await fs.pathExists(path.join(ctx.getReactNativeProjectDirectory(), 'app.config.ts'))) ||\n (await fs.pathExists(path.join(ctx.getReactNativeProjectDirectory(), 'app.config.js')));\n const isGitHubBuild = ctx.job.triggeredBy === BuildTrigger.GIT_BASED_INTEGRATION;\n let extraMessage = '';\n if (isGitHubBuild && isUsingDynamicConfig) {\n extraMessage =\n 'Make sure you connected your GitHub repository to the correct Expo project and if you are using environment variables to switch between projects in app.config.js/app.config.ts remember to set those variables in eas.json too. ';\n } else if (isGitHubBuild) {\n extraMessage = 'Make sure you connected your GitHub repository to the correct Expo project. ';\n } else if (isUsingDynamicConfig) {\n extraMessage =\n 'If you are using environment variables to switch between projects in app.config.js/app.config.ts, make sure those variables are also set inside EAS Build. You can do that using \"env\" field in eas.json or EAS Secrets. ';\n }\n throw new UserFacingError(\n 'EAS_BUILD_PROJECT_ID_MISMATCH',\n `The value of the \"extra.eas.projectId\" field (${appConfig.extra.eas.projectId}) in the app config does not match the current project id (${ctx.env.EAS_BUILD_PROJECT_ID}). ${extraMessage}Learn more: https://expo.fyi/eas-config-mismatch.`\n );\n } else if (ctx.env.EAS_BUILD_PROJECT_ID && !appConfig?.extra?.eas?.projectId) {\n ctx.logger.error(`The \"extra.eas.projectId\" field is missing from your app config.`);\n ctx.markBuildPhaseHasWarnings();\n }\n}\n"]}
@@ -1,12 +1,8 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.createEasBuildBuildFunctionGroup = void 0;
7
4
  const steps_1 = require("@expo/steps");
8
5
  const eas_build_job_1 = require("@expo/eas-build-job");
9
- const semver_1 = __importDefault(require("semver"));
10
6
  const checkout_1 = require("../functions/checkout");
11
7
  const installNodeModules_1 = require("../functions/installNodeModules");
12
8
  const prebuild_1 = require("../functions/prebuild");
@@ -25,6 +21,7 @@ const useNpmToken_1 = require("../functions/useNpmToken");
25
21
  const resolveBuildConfig_1 = require("../functions/resolveBuildConfig");
26
22
  const calculateEASUpdateRuntimeVersion_1 = require("../functions/calculateEASUpdateRuntimeVersion");
27
23
  const eagerBundle_1 = require("../functions/eagerBundle");
24
+ const eagerBundle_2 = require("../../common/eagerBundle");
28
25
  function createEasBuildBuildFunctionGroup(buildToolsContext) {
29
26
  return new steps_1.BuildFunctionGroup({
30
27
  namespace: 'eas',
@@ -65,7 +62,6 @@ function createEasBuildBuildFunctionGroup(buildToolsContext) {
65
62
  }
66
63
  exports.createEasBuildBuildFunctionGroup = createEasBuildBuildFunctionGroup;
67
64
  function createStepsForIosSimulatorBuild({ globalCtx, buildToolsContext, }) {
68
- var _a, _b;
69
65
  const calculateEASUpdateRuntimeVersion = (0, calculateEASUpdateRuntimeVersion_1.calculateEASUpdateRuntimeVersionFunction)().createBuildStepFromFunctionCall(globalCtx, {
70
66
  id: 'calculate_eas_update_runtime_version',
71
67
  });
@@ -93,8 +89,7 @@ function createStepsForIosSimulatorBuild({ globalCtx, buildToolsContext, }) {
93
89
  calculateEASUpdateRuntimeVersion,
94
90
  installPods,
95
91
  configureEASUpdate,
96
- ...(((_a = globalCtx.staticContext.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
97
- semver_1.default.satisfies((_b = globalCtx.staticContext.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')
92
+ ...((0, eagerBundle_2.shouldUseEagerBundle)(globalCtx.staticContext.metadata)
98
93
  ? [
99
94
  (0, eagerBundle_1.eagerBundleBuildFunction)().createBuildStepFromFunctionCall(globalCtx, {
100
95
  callInputs: {
@@ -109,7 +104,6 @@ function createStepsForIosSimulatorBuild({ globalCtx, buildToolsContext, }) {
109
104
  ];
110
105
  }
111
106
  function createStepsForIosBuildWithCredentials({ globalCtx, buildToolsContext, }) {
112
- var _a, _b;
113
107
  const resolveAppleTeamIdFromCredentials = (0, resolveAppleTeamIdFromCredentials_1.resolveAppleTeamIdFromCredentialsFunction)().createBuildStepFromFunctionCall(globalCtx, {
114
108
  id: 'resolve_apple_team_id_from_credentials',
115
109
  });
@@ -153,8 +147,7 @@ function createStepsForIosBuildWithCredentials({ globalCtx, buildToolsContext, }
153
147
  configureEASUpdate,
154
148
  (0, configureIosCredentials_1.configureIosCredentialsFunction)().createBuildStepFromFunctionCall(globalCtx),
155
149
  (0, configureIosVersion_1.configureIosVersionFunction)().createBuildStepFromFunctionCall(globalCtx),
156
- ...(((_a = globalCtx.staticContext.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
157
- semver_1.default.satisfies((_b = globalCtx.staticContext.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')
150
+ ...((0, eagerBundle_2.shouldUseEagerBundle)(globalCtx.staticContext.metadata)
158
151
  ? [
159
152
  (0, eagerBundle_1.eagerBundleBuildFunction)().createBuildStepFromFunctionCall(globalCtx, {
160
153
  callInputs: {
@@ -169,7 +162,6 @@ function createStepsForIosBuildWithCredentials({ globalCtx, buildToolsContext, }
169
162
  ];
170
163
  }
171
164
  function createStepsForAndroidBuildWithoutCredentials({ globalCtx, buildToolsContext, }) {
172
- var _a, _b;
173
165
  const calculateEASUpdateRuntimeVersion = (0, calculateEASUpdateRuntimeVersion_1.calculateEASUpdateRuntimeVersionFunction)().createBuildStepFromFunctionCall(globalCtx, {
174
166
  id: 'calculate_eas_update_runtime_version',
175
167
  });
@@ -193,8 +185,7 @@ function createStepsForAndroidBuildWithoutCredentials({ globalCtx, buildToolsCon
193
185
  (0, prebuild_1.createPrebuildBuildFunction)().createBuildStepFromFunctionCall(globalCtx),
194
186
  calculateEASUpdateRuntimeVersion,
195
187
  configureEASUpdate,
196
- ...(((_a = globalCtx.staticContext.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
197
- semver_1.default.satisfies((_b = globalCtx.staticContext.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')
188
+ ...((0, eagerBundle_2.shouldUseEagerBundle)(globalCtx.staticContext.metadata)
198
189
  ? [
199
190
  (0, eagerBundle_1.eagerBundleBuildFunction)().createBuildStepFromFunctionCall(globalCtx, {
200
191
  callInputs: {
@@ -208,7 +199,6 @@ function createStepsForAndroidBuildWithoutCredentials({ globalCtx, buildToolsCon
208
199
  ];
209
200
  }
210
201
  function createStepsForAndroidBuildWithCredentials({ globalCtx, buildToolsContext, }) {
211
- var _a, _b;
212
202
  const calculateEASUpdateRuntimeVersion = (0, calculateEASUpdateRuntimeVersion_1.calculateEASUpdateRuntimeVersionFunction)().createBuildStepFromFunctionCall(globalCtx, {
213
203
  id: 'calculate_eas_update_runtime_version',
214
204
  });
@@ -235,8 +225,7 @@ function createStepsForAndroidBuildWithCredentials({ globalCtx, buildToolsContex
235
225
  (0, injectAndroidCredentials_1.injectAndroidCredentialsFunction)().createBuildStepFromFunctionCall(globalCtx),
236
226
  (0, configureAndroidVersion_1.configureAndroidVersionFunction)().createBuildStepFromFunctionCall(globalCtx),
237
227
  runGradle,
238
- ...(((_a = globalCtx.staticContext.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
239
- semver_1.default.satisfies((_b = globalCtx.staticContext.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')
228
+ ...((0, eagerBundle_2.shouldUseEagerBundle)(globalCtx.staticContext.metadata)
240
229
  ? [
241
230
  (0, eagerBundle_1.eagerBundleBuildFunction)().createBuildStepFromFunctionCall(globalCtx, {
242
231
  callInputs: {
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/steps/functionGroups/build.ts"],"names":[],"mappings":"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","sourcesContent":["import { BuildFunctionGroup, BuildStep, BuildStepGlobalContext } from '@expo/steps';\nimport { BuildJob, Platform } from '@expo/eas-build-job';\nimport semver from 'semver';\n\nimport { createCheckoutBuildFunction } from '../functions/checkout';\nimport { createInstallNodeModulesBuildFunction } from '../functions/installNodeModules';\nimport { createPrebuildBuildFunction } from '../functions/prebuild';\nimport { createInstallPodsBuildFunction } from '../functions/installPods';\nimport { configureEASUpdateIfInstalledFunction } from '../functions/configureEASUpdateIfInstalled';\nimport { generateGymfileFromTemplateFunction } from '../functions/generateGymfileFromTemplate';\nimport { runFastlaneFunction } from '../functions/runFastlane';\nimport { createFindAndUploadBuildArtifactsBuildFunction } from '../functions/findAndUploadBuildArtifacts';\nimport { CustomBuildContext } from '../../customBuildContext';\nimport { resolveAppleTeamIdFromCredentialsFunction } from '../functions/resolveAppleTeamIdFromCredentials';\nimport { configureIosCredentialsFunction } from '../functions/configureIosCredentials';\nimport { runGradleFunction } from '../functions/runGradle';\nimport { configureIosVersionFunction } from '../functions/configureIosVersion';\nimport { injectAndroidCredentialsFunction } from '../functions/injectAndroidCredentials';\nimport { configureAndroidVersionFunction } from '../functions/configureAndroidVersion';\nimport { createSetUpNpmrcBuildFunction } from '../functions/useNpmToken';\nimport { createResolveBuildConfigBuildFunction } from '../functions/resolveBuildConfig';\nimport { calculateEASUpdateRuntimeVersionFunction } from '../functions/calculateEASUpdateRuntimeVersion';\nimport { eagerBundleBuildFunction } from '../functions/eagerBundle';\n\ninterface HelperFunctionsInput {\n globalCtx: BuildStepGlobalContext;\n buildToolsContext: CustomBuildContext<BuildJob>;\n}\n\nexport function createEasBuildBuildFunctionGroup(\n buildToolsContext: CustomBuildContext<BuildJob>\n): BuildFunctionGroup {\n return new BuildFunctionGroup({\n namespace: 'eas',\n id: 'build',\n createBuildStepsFromFunctionGroupCall: (globalCtx) => {\n if (buildToolsContext.job.platform === Platform.IOS) {\n if (buildToolsContext.job.simulator) {\n return createStepsForIosSimulatorBuild({\n globalCtx,\n buildToolsContext,\n });\n } else {\n return createStepsForIosBuildWithCredentials({\n globalCtx,\n buildToolsContext,\n });\n }\n } else if (buildToolsContext.job.platform === Platform.ANDROID) {\n if (!buildToolsContext.job.secrets?.buildCredentials) {\n return createStepsForAndroidBuildWithoutCredentials({\n globalCtx,\n buildToolsContext,\n });\n } else {\n return createStepsForAndroidBuildWithCredentials({\n globalCtx,\n buildToolsContext,\n });\n }\n }\n\n throw new Error('Build function group is not supported in generic jobs.');\n },\n });\n}\n\nfunction createStepsForIosSimulatorBuild({\n globalCtx,\n buildToolsContext,\n}: HelperFunctionsInput): BuildStep[] {\n const calculateEASUpdateRuntimeVersion =\n calculateEASUpdateRuntimeVersionFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'calculate_eas_update_runtime_version',\n });\n const installPods = createInstallPodsBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n workingDirectory: './ios',\n });\n const configureEASUpdate =\n configureEASUpdateIfInstalledFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n throw_if_not_configured: false,\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n const runFastlane = runFastlaneFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'run_fastlane',\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n return [\n createCheckoutBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createSetUpNpmrcBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createInstallNodeModulesBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createResolveBuildConfigBuildFunction(buildToolsContext).createBuildStepFromFunctionCall(\n globalCtx\n ),\n createPrebuildBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n calculateEASUpdateRuntimeVersion,\n installPods,\n configureEASUpdate,\n ...(globalCtx.staticContext.metadata?.sdkVersion &&\n semver.satisfies(globalCtx.staticContext.metadata?.sdkVersion, '>=52')\n ? [\n eagerBundleBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n }),\n ]\n : []),\n generateGymfileFromTemplateFunction().createBuildStepFromFunctionCall(globalCtx),\n runFastlane,\n createFindAndUploadBuildArtifactsBuildFunction(\n buildToolsContext\n ).createBuildStepFromFunctionCall(globalCtx),\n ];\n}\n\nfunction createStepsForIosBuildWithCredentials({\n globalCtx,\n buildToolsContext,\n}: HelperFunctionsInput): BuildStep[] {\n const resolveAppleTeamIdFromCredentials =\n resolveAppleTeamIdFromCredentialsFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'resolve_apple_team_id_from_credentials',\n });\n const calculateEASUpdateRuntimeVersion =\n calculateEASUpdateRuntimeVersionFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'calculate_eas_update_runtime_version',\n });\n const prebuildStep = createPrebuildBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n apple_team_id: '${ steps.resolve_apple_team_id_from_credentials.apple_team_id }',\n },\n });\n const installPods = createInstallPodsBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n workingDirectory: './ios',\n });\n const configureEASUpdate =\n configureEASUpdateIfInstalledFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n throw_if_not_configured: false,\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n const generateGymfile = generateGymfileFromTemplateFunction().createBuildStepFromFunctionCall(\n globalCtx,\n {\n callInputs: {\n credentials: '${ eas.job.secrets.buildCredentials }',\n },\n }\n );\n const runFastlane = runFastlaneFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'run_fastlane',\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n return [\n createCheckoutBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createSetUpNpmrcBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createInstallNodeModulesBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createResolveBuildConfigBuildFunction(buildToolsContext).createBuildStepFromFunctionCall(\n globalCtx\n ),\n resolveAppleTeamIdFromCredentials,\n prebuildStep,\n calculateEASUpdateRuntimeVersion,\n installPods,\n configureEASUpdate,\n configureIosCredentialsFunction().createBuildStepFromFunctionCall(globalCtx),\n configureIosVersionFunction().createBuildStepFromFunctionCall(globalCtx),\n ...(globalCtx.staticContext.metadata?.sdkVersion &&\n semver.satisfies(globalCtx.staticContext.metadata?.sdkVersion, '>=52')\n ? [\n eagerBundleBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n }),\n ]\n : []),\n generateGymfile,\n runFastlane,\n createFindAndUploadBuildArtifactsBuildFunction(\n buildToolsContext\n ).createBuildStepFromFunctionCall(globalCtx),\n ];\n}\n\nfunction createStepsForAndroidBuildWithoutCredentials({\n globalCtx,\n buildToolsContext,\n}: HelperFunctionsInput): BuildStep[] {\n const calculateEASUpdateRuntimeVersion =\n calculateEASUpdateRuntimeVersionFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'calculate_eas_update_runtime_version',\n });\n const configureEASUpdate =\n configureEASUpdateIfInstalledFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n throw_if_not_configured: false,\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n const runGradle = runGradleFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'run_gradle',\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n return [\n createCheckoutBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createSetUpNpmrcBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createInstallNodeModulesBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createResolveBuildConfigBuildFunction(buildToolsContext).createBuildStepFromFunctionCall(\n globalCtx\n ),\n createPrebuildBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n calculateEASUpdateRuntimeVersion,\n configureEASUpdate,\n ...(globalCtx.staticContext.metadata?.sdkVersion &&\n semver.satisfies(globalCtx.staticContext.metadata?.sdkVersion, '>=52')\n ? [\n eagerBundleBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n }),\n ]\n : []),\n runGradle,\n createFindAndUploadBuildArtifactsBuildFunction(\n buildToolsContext\n ).createBuildStepFromFunctionCall(globalCtx),\n ];\n}\n\nfunction createStepsForAndroidBuildWithCredentials({\n globalCtx,\n buildToolsContext,\n}: HelperFunctionsInput): BuildStep[] {\n const calculateEASUpdateRuntimeVersion =\n calculateEASUpdateRuntimeVersionFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'calculate_eas_update_runtime_version',\n });\n const configureEASUpdate =\n configureEASUpdateIfInstalledFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n throw_if_not_configured: false,\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n const runGradle = runGradleFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'run_gradle',\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n return [\n createCheckoutBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createSetUpNpmrcBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createInstallNodeModulesBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createResolveBuildConfigBuildFunction(buildToolsContext).createBuildStepFromFunctionCall(\n globalCtx\n ),\n createPrebuildBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n calculateEASUpdateRuntimeVersion,\n configureEASUpdate,\n injectAndroidCredentialsFunction().createBuildStepFromFunctionCall(globalCtx),\n configureAndroidVersionFunction().createBuildStepFromFunctionCall(globalCtx),\n runGradle,\n ...(globalCtx.staticContext.metadata?.sdkVersion &&\n semver.satisfies(globalCtx.staticContext.metadata?.sdkVersion, '>=52')\n ? [\n eagerBundleBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n }),\n ]\n : []),\n createFindAndUploadBuildArtifactsBuildFunction(\n buildToolsContext\n ).createBuildStepFromFunctionCall(globalCtx),\n ];\n}\n"]}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/steps/functionGroups/build.ts"],"names":[],"mappings":"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","sourcesContent":["import { BuildFunctionGroup, BuildStep, BuildStepGlobalContext } from '@expo/steps';\nimport { BuildJob, Platform } from '@expo/eas-build-job';\n\nimport { createCheckoutBuildFunction } from '../functions/checkout';\nimport { createInstallNodeModulesBuildFunction } from '../functions/installNodeModules';\nimport { createPrebuildBuildFunction } from '../functions/prebuild';\nimport { createInstallPodsBuildFunction } from '../functions/installPods';\nimport { configureEASUpdateIfInstalledFunction } from '../functions/configureEASUpdateIfInstalled';\nimport { generateGymfileFromTemplateFunction } from '../functions/generateGymfileFromTemplate';\nimport { runFastlaneFunction } from '../functions/runFastlane';\nimport { createFindAndUploadBuildArtifactsBuildFunction } from '../functions/findAndUploadBuildArtifacts';\nimport { CustomBuildContext } from '../../customBuildContext';\nimport { resolveAppleTeamIdFromCredentialsFunction } from '../functions/resolveAppleTeamIdFromCredentials';\nimport { configureIosCredentialsFunction } from '../functions/configureIosCredentials';\nimport { runGradleFunction } from '../functions/runGradle';\nimport { configureIosVersionFunction } from '../functions/configureIosVersion';\nimport { injectAndroidCredentialsFunction } from '../functions/injectAndroidCredentials';\nimport { configureAndroidVersionFunction } from '../functions/configureAndroidVersion';\nimport { createSetUpNpmrcBuildFunction } from '../functions/useNpmToken';\nimport { createResolveBuildConfigBuildFunction } from '../functions/resolveBuildConfig';\nimport { calculateEASUpdateRuntimeVersionFunction } from '../functions/calculateEASUpdateRuntimeVersion';\nimport { eagerBundleBuildFunction } from '../functions/eagerBundle';\nimport { shouldUseEagerBundle } from '../../common/eagerBundle';\n\ninterface HelperFunctionsInput {\n globalCtx: BuildStepGlobalContext;\n buildToolsContext: CustomBuildContext<BuildJob>;\n}\n\nexport function createEasBuildBuildFunctionGroup(\n buildToolsContext: CustomBuildContext<BuildJob>\n): BuildFunctionGroup {\n return new BuildFunctionGroup({\n namespace: 'eas',\n id: 'build',\n createBuildStepsFromFunctionGroupCall: (globalCtx) => {\n if (buildToolsContext.job.platform === Platform.IOS) {\n if (buildToolsContext.job.simulator) {\n return createStepsForIosSimulatorBuild({\n globalCtx,\n buildToolsContext,\n });\n } else {\n return createStepsForIosBuildWithCredentials({\n globalCtx,\n buildToolsContext,\n });\n }\n } else if (buildToolsContext.job.platform === Platform.ANDROID) {\n if (!buildToolsContext.job.secrets?.buildCredentials) {\n return createStepsForAndroidBuildWithoutCredentials({\n globalCtx,\n buildToolsContext,\n });\n } else {\n return createStepsForAndroidBuildWithCredentials({\n globalCtx,\n buildToolsContext,\n });\n }\n }\n\n throw new Error('Build function group is not supported in generic jobs.');\n },\n });\n}\n\nfunction createStepsForIosSimulatorBuild({\n globalCtx,\n buildToolsContext,\n}: HelperFunctionsInput): BuildStep[] {\n const calculateEASUpdateRuntimeVersion =\n calculateEASUpdateRuntimeVersionFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'calculate_eas_update_runtime_version',\n });\n const installPods = createInstallPodsBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n workingDirectory: './ios',\n });\n const configureEASUpdate =\n configureEASUpdateIfInstalledFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n throw_if_not_configured: false,\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n const runFastlane = runFastlaneFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'run_fastlane',\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n return [\n createCheckoutBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createSetUpNpmrcBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createInstallNodeModulesBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createResolveBuildConfigBuildFunction(buildToolsContext).createBuildStepFromFunctionCall(\n globalCtx\n ),\n createPrebuildBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n calculateEASUpdateRuntimeVersion,\n installPods,\n configureEASUpdate,\n ...(shouldUseEagerBundle(globalCtx.staticContext.metadata)\n ? [\n eagerBundleBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n }),\n ]\n : []),\n generateGymfileFromTemplateFunction().createBuildStepFromFunctionCall(globalCtx),\n runFastlane,\n createFindAndUploadBuildArtifactsBuildFunction(\n buildToolsContext\n ).createBuildStepFromFunctionCall(globalCtx),\n ];\n}\n\nfunction createStepsForIosBuildWithCredentials({\n globalCtx,\n buildToolsContext,\n}: HelperFunctionsInput): BuildStep[] {\n const resolveAppleTeamIdFromCredentials =\n resolveAppleTeamIdFromCredentialsFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'resolve_apple_team_id_from_credentials',\n });\n const calculateEASUpdateRuntimeVersion =\n calculateEASUpdateRuntimeVersionFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'calculate_eas_update_runtime_version',\n });\n const prebuildStep = createPrebuildBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n apple_team_id: '${ steps.resolve_apple_team_id_from_credentials.apple_team_id }',\n },\n });\n const installPods = createInstallPodsBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n workingDirectory: './ios',\n });\n const configureEASUpdate =\n configureEASUpdateIfInstalledFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n throw_if_not_configured: false,\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n const generateGymfile = generateGymfileFromTemplateFunction().createBuildStepFromFunctionCall(\n globalCtx,\n {\n callInputs: {\n credentials: '${ eas.job.secrets.buildCredentials }',\n },\n }\n );\n const runFastlane = runFastlaneFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'run_fastlane',\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n return [\n createCheckoutBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createSetUpNpmrcBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createInstallNodeModulesBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createResolveBuildConfigBuildFunction(buildToolsContext).createBuildStepFromFunctionCall(\n globalCtx\n ),\n resolveAppleTeamIdFromCredentials,\n prebuildStep,\n calculateEASUpdateRuntimeVersion,\n installPods,\n configureEASUpdate,\n configureIosCredentialsFunction().createBuildStepFromFunctionCall(globalCtx),\n configureIosVersionFunction().createBuildStepFromFunctionCall(globalCtx),\n ...(shouldUseEagerBundle(globalCtx.staticContext.metadata)\n ? [\n eagerBundleBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n }),\n ]\n : []),\n generateGymfile,\n runFastlane,\n createFindAndUploadBuildArtifactsBuildFunction(\n buildToolsContext\n ).createBuildStepFromFunctionCall(globalCtx),\n ];\n}\n\nfunction createStepsForAndroidBuildWithoutCredentials({\n globalCtx,\n buildToolsContext,\n}: HelperFunctionsInput): BuildStep[] {\n const calculateEASUpdateRuntimeVersion =\n calculateEASUpdateRuntimeVersionFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'calculate_eas_update_runtime_version',\n });\n const configureEASUpdate =\n configureEASUpdateIfInstalledFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n throw_if_not_configured: false,\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n const runGradle = runGradleFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'run_gradle',\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n return [\n createCheckoutBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createSetUpNpmrcBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createInstallNodeModulesBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createResolveBuildConfigBuildFunction(buildToolsContext).createBuildStepFromFunctionCall(\n globalCtx\n ),\n createPrebuildBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n calculateEASUpdateRuntimeVersion,\n configureEASUpdate,\n ...(shouldUseEagerBundle(globalCtx.staticContext.metadata)\n ? [\n eagerBundleBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n }),\n ]\n : []),\n runGradle,\n createFindAndUploadBuildArtifactsBuildFunction(\n buildToolsContext\n ).createBuildStepFromFunctionCall(globalCtx),\n ];\n}\n\nfunction createStepsForAndroidBuildWithCredentials({\n globalCtx,\n buildToolsContext,\n}: HelperFunctionsInput): BuildStep[] {\n const calculateEASUpdateRuntimeVersion =\n calculateEASUpdateRuntimeVersionFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'calculate_eas_update_runtime_version',\n });\n const configureEASUpdate =\n configureEASUpdateIfInstalledFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n throw_if_not_configured: false,\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n const runGradle = runGradleFunction().createBuildStepFromFunctionCall(globalCtx, {\n id: 'run_gradle',\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n });\n return [\n createCheckoutBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createSetUpNpmrcBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createInstallNodeModulesBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n createResolveBuildConfigBuildFunction(buildToolsContext).createBuildStepFromFunctionCall(\n globalCtx\n ),\n createPrebuildBuildFunction().createBuildStepFromFunctionCall(globalCtx),\n calculateEASUpdateRuntimeVersion,\n configureEASUpdate,\n injectAndroidCredentialsFunction().createBuildStepFromFunctionCall(globalCtx),\n configureAndroidVersionFunction().createBuildStepFromFunctionCall(globalCtx),\n runGradle,\n ...(shouldUseEagerBundle(globalCtx.staticContext.metadata)\n ? [\n eagerBundleBuildFunction().createBuildStepFromFunctionCall(globalCtx, {\n callInputs: {\n resolved_eas_update_runtime_version:\n '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',\n },\n }),\n ]\n : []),\n createFindAndUploadBuildArtifactsBuildFunction(\n buildToolsContext\n ).createBuildStepFromFunctionCall(globalCtx),\n ];\n}\n"]}
@@ -39,7 +39,10 @@ function eagerBundleBuildFunction() {
39
39
  env: {
40
40
  ...env,
41
41
  ...(resolvedEASUpdateRuntimeVersion
42
- ? { EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedEASUpdateRuntimeVersion }
42
+ ? {
43
+ EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedEASUpdateRuntimeVersion,
44
+ EXPO_UPDATES_WORKFLOW_OVERRIDE: stepsCtx.global.staticContext.job.type,
45
+ }
43
46
  : null),
44
47
  },
45
48
  packageManager,
@@ -1 +1 @@
1
- {"version":3,"file":"eagerBundle.js","sourceRoot":"","sources":["../../../src/steps/functions/eagerBundle.ts"],"names":[],"mappings":";;;;;;AAAA,uCAAyF;AACzF,oDAA4B;AAE5B,0DAA4D;AAC5D,+DAAmE;AAEnE,SAAgB,wBAAwB;IACtC,OAAO,IAAI,qBAAa,CAAC;QACvB,SAAS,EAAE,KAAK;QAChB,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,mBAAmB;QACzB,cAAc,EAAE;YACd,sBAAc,CAAC,cAAc,CAAC;gBAC5B,EAAE,EAAE,qCAAqC;gBACzC,QAAQ,EAAE,KAAK;gBACf,oBAAoB,EAAE,mCAA2B,CAAC,MAAM;aACzD,CAAC;SACH;QACD,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;;YACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC;YAC9C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;YAC7D,CAAC;YACD,IACE,CAAA,MAAA,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,0CAAE,UAAU;gBAClD,CAAC,gBAAM,CAAC,SAAS,CAAC,MAAA,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,0CAAE,UAAU,EAAE,MAAM,CAAC,EAC7E,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;YACxE,CAAC;YAED,MAAM,cAAc,GAAG,IAAA,sCAAqB,EAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YACxE,MAAM,+BAA+B,GAAG,MAAM,CAAC,mCAAmC,CAAC,KAEtE,CAAC;YAEd,MAAM,IAAA,8BAAgB,EAAC;gBACrB,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,UAAU,EAAE,QAAQ,CAAC,gBAAgB;gBACrC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,EAAE;oBACH,GAAG,GAAG;oBACN,GAAG,CAAC,+BAA+B;wBACjC,CAAC,CAAC,EAAE,iCAAiC,EAAE,+BAA+B,EAAE;wBACxE,CAAC,CAAC,IAAI,CAAC;iBACV;gBACD,cAAc;aACf,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AA3CD,4DA2CC","sourcesContent":["import { BuildFunction, BuildStepInput, BuildStepInputValueTypeName } from '@expo/steps';\nimport semver from 'semver';\n\nimport { eagerBundleAsync } from '../../common/eagerBundle';\nimport { resolvePackageManager } from '../../utils/packageManager';\n\nexport function eagerBundleBuildFunction(): BuildFunction {\n return new BuildFunction({\n namespace: 'eas',\n id: 'eager_bundle',\n name: 'Bundle JavaScript',\n inputProviders: [\n BuildStepInput.createProvider({\n id: 'resolved_eas_update_runtime_version',\n required: false,\n allowedValueTypeName: BuildStepInputValueTypeName.STRING,\n }),\n ],\n fn: async (stepsCtx, { env, inputs }) => {\n const job = stepsCtx.global.staticContext.job;\n if (!job.platform) {\n throw new Error('Custom build job must have platform set');\n }\n if (\n stepsCtx.global.staticContext.metadata?.sdkVersion &&\n !semver.satisfies(stepsCtx.global.staticContext.metadata?.sdkVersion, '>=52')\n ) {\n throw new Error('Eager bundle is not supported for SDK version < 52');\n }\n\n const packageManager = resolvePackageManager(stepsCtx.workingDirectory);\n const resolvedEASUpdateRuntimeVersion = inputs.resolved_eas_update_runtime_version.value as\n | string\n | undefined;\n\n await eagerBundleAsync({\n platform: job.platform,\n workingDir: stepsCtx.workingDirectory,\n logger: stepsCtx.logger,\n env: {\n ...env,\n ...(resolvedEASUpdateRuntimeVersion\n ? { EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedEASUpdateRuntimeVersion }\n : null),\n },\n packageManager,\n });\n },\n });\n}\n"]}
1
+ {"version":3,"file":"eagerBundle.js","sourceRoot":"","sources":["../../../src/steps/functions/eagerBundle.ts"],"names":[],"mappings":";;;;;;AAAA,uCAAyF;AACzF,oDAA4B;AAE5B,0DAA4D;AAC5D,+DAAmE;AAEnE,SAAgB,wBAAwB;IACtC,OAAO,IAAI,qBAAa,CAAC;QACvB,SAAS,EAAE,KAAK;QAChB,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,mBAAmB;QACzB,cAAc,EAAE;YACd,sBAAc,CAAC,cAAc,CAAC;gBAC5B,EAAE,EAAE,qCAAqC;gBACzC,QAAQ,EAAE,KAAK;gBACf,oBAAoB,EAAE,mCAA2B,CAAC,MAAM;aACzD,CAAC;SACH;QACD,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;;YACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC;YAC9C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;YAC7D,CAAC;YACD,IACE,CAAA,MAAA,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,0CAAE,UAAU;gBAClD,CAAC,gBAAM,CAAC,SAAS,CAAC,MAAA,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,0CAAE,UAAU,EAAE,MAAM,CAAC,EAC7E,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;YACxE,CAAC;YAED,MAAM,cAAc,GAAG,IAAA,sCAAqB,EAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YACxE,MAAM,+BAA+B,GAAG,MAAM,CAAC,mCAAmC,CAAC,KAEtE,CAAC;YAEd,MAAM,IAAA,8BAAgB,EAAC;gBACrB,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,UAAU,EAAE,QAAQ,CAAC,gBAAgB;gBACrC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,EAAE;oBACH,GAAG,GAAG;oBACN,GAAG,CAAC,+BAA+B;wBACjC,CAAC,CAAC;4BACE,iCAAiC,EAAE,+BAA+B;4BAClE,8BAA8B,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI;yBACvE;wBACH,CAAC,CAAC,IAAI,CAAC;iBACV;gBACD,cAAc;aACf,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AA9CD,4DA8CC","sourcesContent":["import { BuildFunction, BuildStepInput, BuildStepInputValueTypeName } from '@expo/steps';\nimport semver from 'semver';\n\nimport { eagerBundleAsync } from '../../common/eagerBundle';\nimport { resolvePackageManager } from '../../utils/packageManager';\n\nexport function eagerBundleBuildFunction(): BuildFunction {\n return new BuildFunction({\n namespace: 'eas',\n id: 'eager_bundle',\n name: 'Bundle JavaScript',\n inputProviders: [\n BuildStepInput.createProvider({\n id: 'resolved_eas_update_runtime_version',\n required: false,\n allowedValueTypeName: BuildStepInputValueTypeName.STRING,\n }),\n ],\n fn: async (stepsCtx, { env, inputs }) => {\n const job = stepsCtx.global.staticContext.job;\n if (!job.platform) {\n throw new Error('Custom build job must have platform set');\n }\n if (\n stepsCtx.global.staticContext.metadata?.sdkVersion &&\n !semver.satisfies(stepsCtx.global.staticContext.metadata?.sdkVersion, '>=52')\n ) {\n throw new Error('Eager bundle is not supported for SDK version < 52');\n }\n\n const packageManager = resolvePackageManager(stepsCtx.workingDirectory);\n const resolvedEASUpdateRuntimeVersion = inputs.resolved_eas_update_runtime_version.value as\n | string\n | undefined;\n\n await eagerBundleAsync({\n platform: job.platform,\n workingDir: stepsCtx.workingDirectory,\n logger: stepsCtx.logger,\n env: {\n ...env,\n ...(resolvedEASUpdateRuntimeVersion\n ? {\n EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedEASUpdateRuntimeVersion,\n EXPO_UPDATES_WORKFLOW_OVERRIDE: stepsCtx.global.staticContext.job.type,\n }\n : null),\n },\n packageManager,\n });\n },\n });\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expo/build-tools",
3
- "version": "1.0.160",
3
+ "version": "1.0.162",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "files": [
@@ -32,7 +32,7 @@
32
32
  "@expo/plist": "^0.2.0",
33
33
  "@expo/repack-app": "0.0.6",
34
34
  "@expo/results": "^1.0.0",
35
- "@expo/steps": "1.0.156",
35
+ "@expo/steps": "1.0.161",
36
36
  "@expo/template-file": "1.0.117",
37
37
  "@expo/turtle-spawn": "1.0.117",
38
38
  "@expo/xcpretty": "^4.3.1",
@@ -74,5 +74,5 @@
74
74
  "node": "20.14.0",
75
75
  "yarn": "1.22.21"
76
76
  },
77
- "gitHead": "e2023c9783c0bf548370d1e61ea25a09ab740fd1"
77
+ "gitHead": "fa4141a6b47a04c5374a24e769e1779936099fbc"
78
78
  }