@expo/build-tools 1.0.140 → 1.0.142
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.
- package/dist/builders/android.js +22 -0
- package/dist/builders/android.js.map +1 -1
- package/dist/builders/ios.js +23 -0
- package/dist/builders/ios.js.map +1 -1
- package/dist/common/eagerBundle.d.ts +11 -0
- package/dist/common/eagerBundle.js +17 -0
- package/dist/common/eagerBundle.js.map +1 -0
- package/dist/common/easBuildInternal.js +6 -1
- package/dist/common/easBuildInternal.js.map +1 -1
- package/dist/common/prebuild.js +5 -1
- package/dist/common/prebuild.js.map +1 -1
- package/dist/steps/easFunctions.js +2 -0
- package/dist/steps/easFunctions.js.map +1 -1
- package/dist/steps/functionGroups/build.js +49 -0
- package/dist/steps/functionGroups/build.js.map +1 -1
- package/dist/steps/functions/eagerBundle.d.ts +2 -0
- package/dist/steps/functions/eagerBundle.js +51 -0
- package/dist/steps/functions/eagerBundle.js.map +1 -0
- package/dist/utils/project.d.ts +6 -3
- package/dist/utils/project.js +6 -6
- package/dist/utils/project.js.map +1 -1
- package/package.json +4 -4
package/dist/builders/android.js
CHANGED
|
@@ -6,6 +6,7 @@ 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"));
|
|
9
10
|
const context_1 = require("../context");
|
|
10
11
|
const expoUpdates_1 = require("../utils/expoUpdates");
|
|
11
12
|
const gradle_1 = require("../android/gradle");
|
|
@@ -16,6 +17,7 @@ const gradleConfig_1 = require("../android/gradleConfig");
|
|
|
16
17
|
const setup_1 = require("../common/setup");
|
|
17
18
|
const prebuild_1 = require("../common/prebuild");
|
|
18
19
|
const prepareBuildExecutable_1 = require("../utils/prepareBuildExecutable");
|
|
20
|
+
const eagerBundle_1 = require("../common/eagerBundle");
|
|
19
21
|
const common_1 = require("./common");
|
|
20
22
|
const custom_1 = require("./custom");
|
|
21
23
|
async function androidBuilder(ctx) {
|
|
@@ -35,6 +37,7 @@ async function androidBuilder(ctx) {
|
|
|
35
37
|
}
|
|
36
38
|
exports.default = androidBuilder;
|
|
37
39
|
async function buildAsync(ctx) {
|
|
40
|
+
var _a, _b;
|
|
38
41
|
await (0, setup_1.setupAsync)(ctx);
|
|
39
42
|
const hasNativeCode = ctx.job.type === eas_build_job_1.Workflow.GENERIC;
|
|
40
43
|
if (hasNativeCode) {
|
|
@@ -86,6 +89,25 @@ async function buildAsync(ctx) {
|
|
|
86
89
|
if (ctx.skipNativeBuild) {
|
|
87
90
|
throw new context_1.SkipNativeBuildError('Skipping Gradle build');
|
|
88
91
|
}
|
|
92
|
+
if (((_a = ctx.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) && semver_1.default.satisfies((_b = ctx.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')) {
|
|
93
|
+
await ctx.runBuildPhase(eas_build_job_1.BuildPhase.EAGER_BUNDLE, async () => {
|
|
94
|
+
await (0, eagerBundle_1.eagerBundleAsync)({
|
|
95
|
+
platform: ctx.job.platform,
|
|
96
|
+
workingDir: ctx.getReactNativeProjectDirectory(),
|
|
97
|
+
logger: ctx.logger,
|
|
98
|
+
env: {
|
|
99
|
+
...ctx.env,
|
|
100
|
+
...((resolvedExpoUpdatesRuntimeVersion === null || resolvedExpoUpdatesRuntimeVersion === void 0 ? void 0 : resolvedExpoUpdatesRuntimeVersion.runtimeVersion)
|
|
101
|
+
? {
|
|
102
|
+
EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedExpoUpdatesRuntimeVersion === null || resolvedExpoUpdatesRuntimeVersion === void 0 ? void 0 : resolvedExpoUpdatesRuntimeVersion.runtimeVersion,
|
|
103
|
+
EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,
|
|
104
|
+
}
|
|
105
|
+
: null),
|
|
106
|
+
},
|
|
107
|
+
packageManager: ctx.packageManager,
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
}
|
|
89
111
|
await ctx.runBuildPhase(eas_build_job_1.BuildPhase.RUN_GRADLEW, async () => {
|
|
90
112
|
const gradleCommand = (0, gradle_1.resolveGradleCommand)(ctx.job);
|
|
91
113
|
await (0, gradle_1.runGradleCommand)(ctx, {
|
|
@@ -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';\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';\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 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';\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 (ctx.metadata?.sdkVersion && semver.satisfies(ctx.metadata?.sdkVersion, '>=52')) {\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"]}
|
package/dist/builders/ios.js
CHANGED
|
@@ -8,6 +8,7 @@ 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"));
|
|
11
12
|
const expoUpdates_1 = require("../utils/expoUpdates");
|
|
12
13
|
const artifacts_1 = require("../utils/artifacts");
|
|
13
14
|
const hooks_1 = require("../utils/hooks");
|
|
@@ -21,6 +22,7 @@ const setup_1 = require("../common/setup");
|
|
|
21
22
|
const prebuild_1 = require("../common/prebuild");
|
|
22
23
|
const prepareBuildExecutable_1 = require("../utils/prepareBuildExecutable");
|
|
23
24
|
const processes_1 = require("../utils/processes");
|
|
25
|
+
const eagerBundle_1 = require("../common/eagerBundle");
|
|
24
26
|
const common_1 = require("./common");
|
|
25
27
|
const custom_1 = require("./custom");
|
|
26
28
|
const INSTALL_PODS_WARN_TIMEOUT_MS = 15 * 60 * 1000; // 15 minutes
|
|
@@ -44,6 +46,7 @@ async function iosBuilder(ctx) {
|
|
|
44
46
|
}
|
|
45
47
|
exports.default = iosBuilder;
|
|
46
48
|
async function buildAsync(ctx) {
|
|
49
|
+
var _a, _b;
|
|
47
50
|
await (0, setup_1.setupAsync)(ctx);
|
|
48
51
|
const hasNativeCode = ctx.job.type === eas_build_job_1.Workflow.GENERIC;
|
|
49
52
|
const credentialsManager = new manager_1.default(ctx);
|
|
@@ -99,6 +102,25 @@ async function buildAsync(ctx) {
|
|
|
99
102
|
resolvedFingerprintSources: (_b = resolvedExpoUpdatesRuntimeVersion === null || resolvedExpoUpdatesRuntimeVersion === void 0 ? void 0 : resolvedExpoUpdatesRuntimeVersion.fingerprintSources) !== null && _b !== void 0 ? _b : null,
|
|
100
103
|
});
|
|
101
104
|
});
|
|
105
|
+
if (((_a = ctx.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) && semver_1.default.satisfies((_b = ctx.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')) {
|
|
106
|
+
await ctx.runBuildPhase(eas_build_job_1.BuildPhase.EAGER_BUNDLE, async () => {
|
|
107
|
+
await (0, eagerBundle_1.eagerBundleAsync)({
|
|
108
|
+
platform: ctx.job.platform,
|
|
109
|
+
workingDir: ctx.getReactNativeProjectDirectory(),
|
|
110
|
+
logger: ctx.logger,
|
|
111
|
+
env: {
|
|
112
|
+
...ctx.env,
|
|
113
|
+
...((resolvedExpoUpdatesRuntimeVersion === null || resolvedExpoUpdatesRuntimeVersion === void 0 ? void 0 : resolvedExpoUpdatesRuntimeVersion.runtimeVersion)
|
|
114
|
+
? {
|
|
115
|
+
EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedExpoUpdatesRuntimeVersion === null || resolvedExpoUpdatesRuntimeVersion === void 0 ? void 0 : resolvedExpoUpdatesRuntimeVersion.runtimeVersion,
|
|
116
|
+
EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,
|
|
117
|
+
}
|
|
118
|
+
: null),
|
|
119
|
+
},
|
|
120
|
+
packageManager: ctx.packageManager,
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
}
|
|
102
124
|
await ctx.runBuildPhase(eas_build_job_1.BuildPhase.RUN_FASTLANE, async () => {
|
|
103
125
|
const scheme = (0, resolve_1.resolveScheme)(ctx);
|
|
104
126
|
const entitlements = await readEntitlementsAsync(ctx, { scheme, buildConfiguration });
|
|
@@ -111,6 +133,7 @@ async function buildAsync(ctx) {
|
|
|
111
133
|
? {
|
|
112
134
|
extraEnv: {
|
|
113
135
|
EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedExpoUpdatesRuntimeVersion === null || resolvedExpoUpdatesRuntimeVersion === void 0 ? void 0 : resolvedExpoUpdatesRuntimeVersion.runtimeVersion,
|
|
136
|
+
EXPO_UPDATES_WORKFLOW_OVERRIDE: ctx.job.type,
|
|
114
137
|
},
|
|
115
138
|
}
|
|
116
139
|
: null),
|
package/dist/builders/ios.js.map
CHANGED
|
@@ -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';\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';\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 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 },\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';\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 (ctx.metadata?.sdkVersion && semver.satisfies(ctx.metadata?.sdkVersion, '>=52')) {\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"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="bunyan" />
|
|
2
|
+
import { Platform } from '@expo/eas-build-job';
|
|
3
|
+
import { bunyan } from '@expo/logger';
|
|
4
|
+
import { PackageManager } from '../utils/packageManager';
|
|
5
|
+
export declare function eagerBundleAsync({ platform, workingDir, logger, env, packageManager, }: {
|
|
6
|
+
platform: Platform;
|
|
7
|
+
workingDir: string;
|
|
8
|
+
logger: bunyan;
|
|
9
|
+
env: Record<string, string | undefined>;
|
|
10
|
+
packageManager: PackageManager;
|
|
11
|
+
}): Promise<void>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.eagerBundleAsync = void 0;
|
|
4
|
+
const project_1 = require("../utils/project");
|
|
5
|
+
async function eagerBundleAsync({ platform, workingDir, logger, env, packageManager, }) {
|
|
6
|
+
await (0, project_1.runExpoCliCommand)({
|
|
7
|
+
args: ['export:embed', '--eager', '--platform', platform],
|
|
8
|
+
options: {
|
|
9
|
+
cwd: workingDir,
|
|
10
|
+
logger,
|
|
11
|
+
env,
|
|
12
|
+
},
|
|
13
|
+
packageManager,
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
exports.eagerBundleAsync = eagerBundleAsync;
|
|
17
|
+
//# sourceMappingURL=eagerBundle.js.map
|
|
@@ -0,0 +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,CAAC;QACzD,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],\n options: {\n cwd: workingDir,\n logger,\n env,\n },\n packageManager,\n });\n}\n"]}
|
|
@@ -123,7 +123,12 @@ function validateEasBuildInternalResult({ oldJob, result, }) {
|
|
|
123
123
|
if (error) {
|
|
124
124
|
throw error;
|
|
125
125
|
}
|
|
126
|
-
const newJob = (0, eas_build_job_1.sanitizeBuildJob)(
|
|
126
|
+
const newJob = (0, eas_build_job_1.sanitizeBuildJob)({
|
|
127
|
+
...value.job,
|
|
128
|
+
// We want to retain values that we have set on the job.
|
|
129
|
+
appId: oldJob.appId,
|
|
130
|
+
initiatingUserId: oldJob.initiatingUserId,
|
|
131
|
+
});
|
|
127
132
|
(0, assert_1.default)(newJob.platform === oldJob.platform, 'eas-cli returned a job for a wrong platform');
|
|
128
133
|
const newMetadata = (0, eas_build_job_1.sanitizeMetadata)(value.metadata);
|
|
129
134
|
return { newJob, newMetadata };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"easBuildInternal.js","sourceRoot":"","sources":["../../src/common/easBuildInternal.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"easBuildInternal.js","sourceRoot":"","sources":["../../src/common/easBuildInternal.ts"],"names":[],"mappings":"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","sourcesContent":["import assert from 'assert';\n\nimport { BuildJob, Env, Metadata, sanitizeBuildJob, sanitizeMetadata } from '@expo/eas-build-job';\nimport { PipeMode, bunyan } from '@expo/logger';\nimport spawn from '@expo/turtle-spawn';\nimport Joi from 'joi';\nimport nullthrows from 'nullthrows';\nimport { BuildStepEnv } from '@expo/steps';\n\nimport { BuildContext } from '../context';\nimport { isAtLeastNpm7Async } from '../utils/packageManager';\n\nconst EAS_CLI_STAGING_NPM_TAG = 'latest-eas-build-staging';\nconst EAS_CLI_PRODUCTION_NPM_TAG = 'latest-eas-build';\n\nconst EasBuildInternalResultSchema = Joi.object<{ job: object; metadata: object }>({\n job: Joi.object().unknown(),\n metadata: Joi.object().unknown(),\n});\n\nexport async function runEasBuildInternalAsync<TJob extends BuildJob>({\n job,\n logger,\n env,\n cwd,\n}: {\n job: TJob;\n logger: bunyan;\n env: BuildStepEnv;\n cwd: string;\n}): Promise<{\n newJob: TJob;\n newMetadata: Metadata;\n}> {\n const { cmd, args, extraEnv } = await resolveEasCommandPrefixAndEnvAsync();\n const { buildProfile, githubTriggerOptions } = job;\n assert(buildProfile, 'build profile is missing in a build from git-based integration.');\n\n const autoSubmitArgs = [];\n if (githubTriggerOptions?.submitProfile) {\n autoSubmitArgs.push('--auto-submit-with-profile');\n autoSubmitArgs.push(githubTriggerOptions.submitProfile);\n } else if (githubTriggerOptions?.autoSubmit) {\n autoSubmitArgs.push('--auto-submit');\n }\n\n const result = await spawn(\n cmd,\n [\n ...args,\n 'build:internal',\n '--platform',\n job.platform,\n '--profile',\n buildProfile,\n ...autoSubmitArgs,\n ],\n {\n cwd,\n env: {\n ...env,\n EXPO_TOKEN: nullthrows(job.secrets, 'Secrets must be defined for non-custom builds')\n .robotAccessToken,\n ...extraEnv,\n },\n logger,\n mode: PipeMode.STDERR_ONLY_AS_STDOUT,\n }\n );\n const stdout = result.stdout.toString();\n const parsed = JSON.parse(stdout);\n return validateEasBuildInternalResult({\n result: parsed,\n oldJob: job,\n });\n}\n\nexport async function resolveEnvFromBuildProfileAsync<TJob extends BuildJob>(\n ctx: BuildContext<TJob>,\n { cwd }: { cwd: string }\n): Promise<Env> {\n const { cmd, args, extraEnv } = await resolveEasCommandPrefixAndEnvAsync();\n const { buildProfile } = ctx.job;\n assert(buildProfile, 'build profile is missing in a build from git-based integration.');\n let spawnResult;\n try {\n spawnResult = await spawn(\n cmd,\n [\n ...args,\n 'config',\n '--platform',\n ctx.job.platform,\n '--profile',\n buildProfile,\n '--non-interactive',\n '--json',\n '--eas-json-only',\n ],\n {\n cwd,\n env: { ...ctx.env, ...extraEnv },\n }\n );\n } catch (err: any) {\n ctx.logger.error(`Failed to the read build profile ${buildProfile} from eas.json.`);\n ctx.logger.error(err.stderr?.toString());\n throw Error(`Failed to read the build profile ${buildProfile} from eas.json.`);\n }\n const stdout = spawnResult.stdout.toString();\n const parsed = JSON.parse(stdout);\n const env = validateEnvs(parsed.buildProfile);\n return env;\n}\n\nasync function resolveEasCommandPrefixAndEnvAsync(): Promise<{\n cmd: string;\n args: string[];\n extraEnv: Env;\n}> {\n const npxArgsPrefix = (await isAtLeastNpm7Async()) ? ['-y'] : [];\n if (process.env.ENVIRONMENT === 'development') {\n return {\n cmd: process.env.EAS_BUILD_INTERNAL_EXECUTABLE ?? `eas`,\n args: [],\n extraEnv: { EXPO_LOCAL: '1' },\n };\n } else if (process.env.ENVIRONMENT === 'staging') {\n return {\n cmd: 'npx',\n args: [...npxArgsPrefix, `eas-cli@${EAS_CLI_STAGING_NPM_TAG}`],\n extraEnv: { EXPO_STAGING: '1' },\n };\n } else {\n return {\n cmd: 'npx',\n args: [...npxArgsPrefix, `eas-cli@${EAS_CLI_PRODUCTION_NPM_TAG}`],\n extraEnv: {},\n };\n }\n}\n\nfunction validateEasBuildInternalResult<TJob extends BuildJob>({\n oldJob,\n result,\n}: {\n oldJob: TJob;\n result: any;\n}): { newJob: TJob; newMetadata: Metadata } {\n const { value, error } = EasBuildInternalResultSchema.validate(result, {\n stripUnknown: true,\n convert: true,\n abortEarly: false,\n });\n if (error) {\n throw error;\n }\n const newJob = sanitizeBuildJob({\n ...value.job,\n // We want to retain values that we have set on the job.\n appId: oldJob.appId,\n initiatingUserId: oldJob.initiatingUserId,\n }) as TJob;\n assert(newJob.platform === oldJob.platform, 'eas-cli returned a job for a wrong platform');\n const newMetadata = sanitizeMetadata(value.metadata);\n return { newJob, newMetadata };\n}\n\nfunction validateEnvs(result: any): Env {\n const { value, error } = Joi.object({\n env: Joi.object().pattern(Joi.string(), Joi.string()),\n }).validate(result, {\n stripUnknown: true,\n convert: true,\n abortEarly: false,\n });\n if (error) {\n throw error;\n }\n return value?.env;\n}\n"]}
|
package/dist/common/prebuild.js
CHANGED
|
@@ -14,7 +14,11 @@ async function prebuildAsync(ctx, { logger, workingDir, options }) {
|
|
|
14
14
|
},
|
|
15
15
|
};
|
|
16
16
|
const prebuildCommandArgs = getPrebuildCommandArgs(ctx);
|
|
17
|
-
await (0, project_1.runExpoCliCommand)(
|
|
17
|
+
await (0, project_1.runExpoCliCommand)({
|
|
18
|
+
args: prebuildCommandArgs,
|
|
19
|
+
options: spawnOptions,
|
|
20
|
+
packageManager: ctx.packageManager,
|
|
21
|
+
});
|
|
18
22
|
const installDependenciesSpawnPromise = (await (0, installDependencies_1.installDependenciesAsync)(ctx, {
|
|
19
23
|
logger,
|
|
20
24
|
cwd: (0, installDependencies_1.resolvePackagerDir)(ctx),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prebuild.js","sourceRoot":"","sources":["../../src/common/prebuild.ts"],"names":[],"mappings":";;;AAKA,8CAAqD;AAErD,+DAAqF;AAM9E,KAAK,UAAU,aAAa,CACjC,GAAuB,EACvB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAqE;IAElG,MAAM,YAAY,GAAiB;QACjC,GAAG,EAAE,UAAU;QACf,MAAM;QACN,GAAG,EAAE;YACH,yBAAyB,EAAE,GAAG;YAC9B,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS;YACrB,GAAG,GAAG,CAAC,GAAG;SACX;KACF,CAAC;IAEF,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACxD,MAAM,IAAA,2BAAiB,EAAC,
|
|
1
|
+
{"version":3,"file":"prebuild.js","sourceRoot":"","sources":["../../src/common/prebuild.ts"],"names":[],"mappings":";;;AAKA,8CAAqD;AAErD,+DAAqF;AAM9E,KAAK,UAAU,aAAa,CACjC,GAAuB,EACvB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAqE;IAElG,MAAM,YAAY,GAAiB;QACjC,GAAG,EAAE,UAAU;QACf,MAAM;QACN,GAAG,EAAE;YACH,yBAAyB,EAAE,GAAG;YAC9B,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS;YACrB,GAAG,GAAG,CAAC,GAAG;SACX;KACF,CAAC;IAEF,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACxD,MAAM,IAAA,2BAAiB,EAAC;QACtB,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,YAAY;QACrB,cAAc,EAAE,GAAG,CAAC,cAAc;KACnC,CAAC,CAAC;IACH,MAAM,+BAA+B,GAAG,CACtC,MAAM,IAAA,8CAAwB,EAAC,GAAG,EAAE;QAClC,MAAM;QACN,GAAG,EAAE,IAAA,wCAAkB,EAAC,GAAG,CAAC;KAC7B,CAAC,CACH,CAAC,YAAY,CAAC;IACf,MAAM,+BAA+B,CAAC;AACxC,CAAC;AA3BD,sCA2BC;AAED,SAAS,sBAAsB,CAAwB,GAAuB;;IAC5E,IAAI,eAAe,GACjB,MAAA,MAAA,GAAG,CAAC,GAAG,CAAC,YAAY,0CAAE,eAAe,mCAAI,oCAAoC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAClG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACjD,eAAe,GAAG,GAAG,eAAe,eAAe,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IACxE,CAAC;IACD,MAAM,gBAAgB,GAAG,MAAM,CAAC;IAChC,MAAM,iBAAiB,GAAG,OAAO,CAAC;IAClC,MAAM,oBAAoB,GAAG,WAAW,CAAC;IACzC,IAAI,eAAe,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjD,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9E,CAAC;IACD,IAAI,eAAe,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAClD,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/E,CAAC;IACD,IAAI,eAAe,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACrD,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAClF,CAAC;IAED,OAAO,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC","sourcesContent":["import { BuildJob } from '@expo/eas-build-job';\nimport { SpawnOptions } from '@expo/turtle-spawn';\nimport { bunyan } from '@expo/logger';\n\nimport { BuildContext } from '../context';\nimport { runExpoCliCommand } from '../utils/project';\n\nimport { installDependenciesAsync, resolvePackagerDir } from './installDependencies';\n\nexport interface PrebuildOptions {\n extraEnvs?: Record<string, string>;\n}\n\nexport async function prebuildAsync<TJob extends BuildJob>(\n ctx: BuildContext<TJob>,\n { logger, workingDir, options }: { logger: bunyan; workingDir: string; options?: PrebuildOptions }\n): Promise<void> {\n const spawnOptions: SpawnOptions = {\n cwd: workingDir,\n logger,\n env: {\n EXPO_IMAGE_UTILS_NO_SHARP: '1',\n ...options?.extraEnvs,\n ...ctx.env,\n },\n };\n\n const prebuildCommandArgs = getPrebuildCommandArgs(ctx);\n await runExpoCliCommand({\n args: prebuildCommandArgs,\n options: spawnOptions,\n packageManager: ctx.packageManager,\n });\n const installDependenciesSpawnPromise = (\n await installDependenciesAsync(ctx, {\n logger,\n cwd: resolvePackagerDir(ctx),\n })\n ).spawnPromise;\n await installDependenciesSpawnPromise;\n}\n\nfunction getPrebuildCommandArgs<TJob extends BuildJob>(ctx: BuildContext<TJob>): string[] {\n let prebuildCommand =\n ctx.job.experimental?.prebuildCommand ?? `prebuild --no-install --platform ${ctx.job.platform}`;\n if (!prebuildCommand.match(/(?:--platform| -p)/)) {\n prebuildCommand = `${prebuildCommand} --platform ${ctx.job.platform}`;\n }\n const npxCommandPrefix = 'npx ';\n const expoCommandPrefix = 'expo ';\n const expoCliCommandPrefix = 'expo-cli ';\n if (prebuildCommand.startsWith(npxCommandPrefix)) {\n prebuildCommand = prebuildCommand.substring(npxCommandPrefix.length).trim();\n }\n if (prebuildCommand.startsWith(expoCommandPrefix)) {\n prebuildCommand = prebuildCommand.substring(expoCommandPrefix.length).trim();\n }\n if (prebuildCommand.startsWith(expoCliCommandPrefix)) {\n prebuildCommand = prebuildCommand.substring(expoCliCommandPrefix.length).trim();\n }\n\n return prebuildCommand.split(' ');\n}\n"]}
|
|
@@ -25,6 +25,7 @@ const sendSlackMessage_1 = require("./functions/sendSlackMessage");
|
|
|
25
25
|
const resolveBuildConfig_1 = require("./functions/resolveBuildConfig");
|
|
26
26
|
const calculateEASUpdateRuntimeVersion_1 = require("./functions/calculateEASUpdateRuntimeVersion");
|
|
27
27
|
const repack_1 = require("./functions/repack");
|
|
28
|
+
const eagerBundle_1 = require("./functions/eagerBundle");
|
|
28
29
|
function getEasFunctions(ctx) {
|
|
29
30
|
const functions = [
|
|
30
31
|
(0, checkout_1.createCheckoutBuildFunction)(),
|
|
@@ -35,6 +36,7 @@ function getEasFunctions(ctx) {
|
|
|
35
36
|
(0, configureEASUpdateIfInstalled_1.configureEASUpdateIfInstalledFunction)(),
|
|
36
37
|
(0, injectAndroidCredentials_1.injectAndroidCredentialsFunction)(),
|
|
37
38
|
(0, configureAndroidVersion_1.configureAndroidVersionFunction)(),
|
|
39
|
+
(0, eagerBundle_1.eagerBundleBuildFunction)(),
|
|
38
40
|
(0, runGradle_1.runGradleFunction)(),
|
|
39
41
|
(0, resolveAppleTeamIdFromCredentials_1.resolveAppleTeamIdFromCredentialsFunction)(),
|
|
40
42
|
(0, configureIosCredentials_1.configureIosCredentialsFunction)(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"easFunctions.js","sourceRoot":"","sources":["../../src/steps/easFunctions.ts"],"names":[],"mappings":";;;AAIA,+DAA+E;AAC/E,mDAAmE;AACnE,yDAAwE;AACxE,uEAAuF;AACvF,mDAAmE;AACnE,yFAAyG;AACzG,6FAAkG;AAClG,mFAAwF;AACxF,iFAAsF;AACtF,qDAA0D;AAC1D,qGAA0G;AAC1G,iFAAsF;AACtF,yEAA8E;AAC9E,yFAA8F;AAC9F,yDAA8D;AAC9D,2EAA2F;AAC3F,qEAAqF;AACrF,+DAA+E;AAC/E,uIAA0I;AAC1I,yDAAyE;AACzE,mEAA8E;AAC9E,uEAAuF;AACvF,mGAAwG;AACxG,+CAA+D;
|
|
1
|
+
{"version":3,"file":"easFunctions.js","sourceRoot":"","sources":["../../src/steps/easFunctions.ts"],"names":[],"mappings":";;;AAIA,+DAA+E;AAC/E,mDAAmE;AACnE,yDAAwE;AACxE,uEAAuF;AACvF,mDAAmE;AACnE,yFAAyG;AACzG,6FAAkG;AAClG,mFAAwF;AACxF,iFAAsF;AACtF,qDAA0D;AAC1D,qGAA0G;AAC1G,iFAAsF;AACtF,yEAA8E;AAC9E,yFAA8F;AAC9F,yDAA8D;AAC9D,2EAA2F;AAC3F,qEAAqF;AACrF,+DAA+E;AAC/E,uIAA0I;AAC1I,yDAAyE;AACzE,mEAA8E;AAC9E,uEAAuF;AACvF,mGAAwG;AACxG,+CAA+D;AAC/D,yDAAmE;AAEnE,SAAgB,eAAe,CAAC,GAAuB;IACrD,MAAM,SAAS,GAAG;QAChB,IAAA,sCAA2B,GAAE;QAC7B,IAAA,kDAAiC,EAAC,GAAG,CAAC;QACtC,IAAA,2CAA6B,GAAE;QAC/B,IAAA,0DAAqC,GAAE;QACvC,IAAA,sCAA2B,GAAE;QAE7B,IAAA,qEAAqC,GAAE;QACvC,IAAA,2DAAgC,GAAE;QAClC,IAAA,yDAA+B,GAAE;QACjC,IAAA,sCAAwB,GAAE;QAC1B,IAAA,6BAAiB,GAAE;QACnB,IAAA,6EAAyC,GAAE;QAC3C,IAAA,yDAA+B,GAAE;QACjC,IAAA,iDAA2B,GAAE;QAC7B,IAAA,iEAAmC,GAAE;QACrC,IAAA,iCAAmB,GAAE;QACrB,IAAA,8DAAuC,GAAE;QACzC,IAAA,wDAAoC,GAAE;QACtC,IAAA,kDAAiC,GAAE;QAEnC,IAAA,4CAA8B,GAAE;QAChC,IAAA,iDAA8B,GAAE;QAEhC,IAAA,2EAAwC,GAAE;QAE1C,IAAA,kCAAyB,GAAE;KAC5B,CAAC;IAEF,IAAI,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC;QACtB,SAAS,CAAC,IAAI,CACZ,GAAG;YACD,IAAA,4EAA8C,EAAC,GAAG,CAAC;YACnD,IAAA,0DAAqC,EAAC,GAAG,CAAC;YAC1C,IAAA,6GAAwD,EAAC,GAAG,CAAC;SAC9D,CACF,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAzCD,0CAyCC","sourcesContent":["import { BuildFunction } from '@expo/steps';\n\nimport { CustomBuildContext } from '../customBuildContext';\n\nimport { createUploadArtifactBuildFunction } from './functions/uploadArtifact';\nimport { createCheckoutBuildFunction } from './functions/checkout';\nimport { createSetUpNpmrcBuildFunction } from './functions/useNpmToken';\nimport { createInstallNodeModulesBuildFunction } from './functions/installNodeModules';\nimport { createPrebuildBuildFunction } from './functions/prebuild';\nimport { createFindAndUploadBuildArtifactsBuildFunction } from './functions/findAndUploadBuildArtifacts';\nimport { configureEASUpdateIfInstalledFunction } from './functions/configureEASUpdateIfInstalled';\nimport { injectAndroidCredentialsFunction } from './functions/injectAndroidCredentials';\nimport { configureAndroidVersionFunction } from './functions/configureAndroidVersion';\nimport { runGradleFunction } from './functions/runGradle';\nimport { resolveAppleTeamIdFromCredentialsFunction } from './functions/resolveAppleTeamIdFromCredentials';\nimport { configureIosCredentialsFunction } from './functions/configureIosCredentials';\nimport { configureIosVersionFunction } from './functions/configureIosVersion';\nimport { generateGymfileFromTemplateFunction } from './functions/generateGymfileFromTemplate';\nimport { runFastlaneFunction } from './functions/runFastlane';\nimport { createStartAndroidEmulatorBuildFunction } from './functions/startAndroidEmulator';\nimport { createStartIosSimulatorBuildFunction } from './functions/startIosSimulator';\nimport { createInstallMaestroBuildFunction } from './functions/installMaestro';\nimport { createGetCredentialsForBuildTriggeredByGithubIntegration } from './functions/getCredentialsForBuildTriggeredByGitHubIntegration';\nimport { createInstallPodsBuildFunction } from './functions/installPods';\nimport { createSendSlackMessageFunction } from './functions/sendSlackMessage';\nimport { createResolveBuildConfigBuildFunction } from './functions/resolveBuildConfig';\nimport { calculateEASUpdateRuntimeVersionFunction } from './functions/calculateEASUpdateRuntimeVersion';\nimport { createRepackBuildFunction } from './functions/repack';\nimport { eagerBundleBuildFunction } from './functions/eagerBundle';\n\nexport function getEasFunctions(ctx: CustomBuildContext): BuildFunction[] {\n const functions = [\n createCheckoutBuildFunction(),\n createUploadArtifactBuildFunction(ctx),\n createSetUpNpmrcBuildFunction(),\n createInstallNodeModulesBuildFunction(),\n createPrebuildBuildFunction(),\n\n configureEASUpdateIfInstalledFunction(),\n injectAndroidCredentialsFunction(),\n configureAndroidVersionFunction(),\n eagerBundleBuildFunction(),\n runGradleFunction(),\n resolveAppleTeamIdFromCredentialsFunction(),\n configureIosCredentialsFunction(),\n configureIosVersionFunction(),\n generateGymfileFromTemplateFunction(),\n runFastlaneFunction(),\n createStartAndroidEmulatorBuildFunction(),\n createStartIosSimulatorBuildFunction(),\n createInstallMaestroBuildFunction(),\n\n createInstallPodsBuildFunction(),\n createSendSlackMessageFunction(),\n\n calculateEASUpdateRuntimeVersionFunction(),\n\n createRepackBuildFunction(),\n ];\n\n if (ctx.hasBuildJob()) {\n functions.push(\n ...[\n createFindAndUploadBuildArtifactsBuildFunction(ctx),\n createResolveBuildConfigBuildFunction(ctx),\n createGetCredentialsForBuildTriggeredByGithubIntegration(ctx),\n ]\n );\n }\n\n return functions;\n}\n"]}
|
|
@@ -1,8 +1,12 @@
|
|
|
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
6
|
exports.createEasBuildBuildFunctionGroup = void 0;
|
|
4
7
|
const steps_1 = require("@expo/steps");
|
|
5
8
|
const eas_build_job_1 = require("@expo/eas-build-job");
|
|
9
|
+
const semver_1 = __importDefault(require("semver"));
|
|
6
10
|
const checkout_1 = require("../functions/checkout");
|
|
7
11
|
const installNodeModules_1 = require("../functions/installNodeModules");
|
|
8
12
|
const prebuild_1 = require("../functions/prebuild");
|
|
@@ -20,6 +24,7 @@ const configureAndroidVersion_1 = require("../functions/configureAndroidVersion"
|
|
|
20
24
|
const useNpmToken_1 = require("../functions/useNpmToken");
|
|
21
25
|
const resolveBuildConfig_1 = require("../functions/resolveBuildConfig");
|
|
22
26
|
const calculateEASUpdateRuntimeVersion_1 = require("../functions/calculateEASUpdateRuntimeVersion");
|
|
27
|
+
const eagerBundle_1 = require("../functions/eagerBundle");
|
|
23
28
|
function createEasBuildBuildFunctionGroup(buildToolsContext) {
|
|
24
29
|
return new steps_1.BuildFunctionGroup({
|
|
25
30
|
namespace: 'eas',
|
|
@@ -61,6 +66,7 @@ function createEasBuildBuildFunctionGroup(buildToolsContext) {
|
|
|
61
66
|
}
|
|
62
67
|
exports.createEasBuildBuildFunctionGroup = createEasBuildBuildFunctionGroup;
|
|
63
68
|
function createStepsForIosSimulatorBuild({ globalCtx, buildToolsContext, }) {
|
|
69
|
+
var _a, _b;
|
|
64
70
|
const calculateEASUpdateRuntimeVersion = (0, calculateEASUpdateRuntimeVersion_1.calculateEASUpdateRuntimeVersionFunction)().createBuildStepFromFunctionCall(globalCtx, {
|
|
65
71
|
id: 'calculate_eas_update_runtime_version',
|
|
66
72
|
});
|
|
@@ -88,12 +94,23 @@ function createStepsForIosSimulatorBuild({ globalCtx, buildToolsContext, }) {
|
|
|
88
94
|
calculateEASUpdateRuntimeVersion,
|
|
89
95
|
installPods,
|
|
90
96
|
configureEASUpdate,
|
|
97
|
+
...(((_a = globalCtx.staticContext.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
|
|
98
|
+
semver_1.default.satisfies((_b = globalCtx.staticContext.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')
|
|
99
|
+
? [
|
|
100
|
+
(0, eagerBundle_1.eagerBundleBuildFunction)().createBuildStepFromFunctionCall(globalCtx, {
|
|
101
|
+
callInputs: {
|
|
102
|
+
resolved_eas_update_runtime_version: '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',
|
|
103
|
+
},
|
|
104
|
+
}),
|
|
105
|
+
]
|
|
106
|
+
: []),
|
|
91
107
|
(0, generateGymfileFromTemplate_1.generateGymfileFromTemplateFunction)().createBuildStepFromFunctionCall(globalCtx),
|
|
92
108
|
runFastlane,
|
|
93
109
|
(0, findAndUploadBuildArtifacts_1.createFindAndUploadBuildArtifactsBuildFunction)(buildToolsContext).createBuildStepFromFunctionCall(globalCtx),
|
|
94
110
|
];
|
|
95
111
|
}
|
|
96
112
|
function createStepsForIosBuildWithCredentials({ globalCtx, buildToolsContext, }) {
|
|
113
|
+
var _a, _b;
|
|
97
114
|
const resolveAppleTeamIdFromCredentials = (0, resolveAppleTeamIdFromCredentials_1.resolveAppleTeamIdFromCredentialsFunction)().createBuildStepFromFunctionCall(globalCtx, {
|
|
98
115
|
id: 'resolve_apple_team_id_from_credentials',
|
|
99
116
|
});
|
|
@@ -137,12 +154,23 @@ function createStepsForIosBuildWithCredentials({ globalCtx, buildToolsContext, }
|
|
|
137
154
|
configureEASUpdate,
|
|
138
155
|
(0, configureIosCredentials_1.configureIosCredentialsFunction)().createBuildStepFromFunctionCall(globalCtx),
|
|
139
156
|
(0, configureIosVersion_1.configureIosVersionFunction)().createBuildStepFromFunctionCall(globalCtx),
|
|
157
|
+
...(((_a = globalCtx.staticContext.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
|
|
158
|
+
semver_1.default.satisfies((_b = globalCtx.staticContext.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')
|
|
159
|
+
? [
|
|
160
|
+
(0, eagerBundle_1.eagerBundleBuildFunction)().createBuildStepFromFunctionCall(globalCtx, {
|
|
161
|
+
callInputs: {
|
|
162
|
+
resolved_eas_update_runtime_version: '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',
|
|
163
|
+
},
|
|
164
|
+
}),
|
|
165
|
+
]
|
|
166
|
+
: []),
|
|
140
167
|
generateGymfile,
|
|
141
168
|
runFastlane,
|
|
142
169
|
(0, findAndUploadBuildArtifacts_1.createFindAndUploadBuildArtifactsBuildFunction)(buildToolsContext).createBuildStepFromFunctionCall(globalCtx),
|
|
143
170
|
];
|
|
144
171
|
}
|
|
145
172
|
function createStepsForAndroidBuildWithoutCredentials({ globalCtx, buildToolsContext, }) {
|
|
173
|
+
var _a, _b;
|
|
146
174
|
const calculateEASUpdateRuntimeVersion = (0, calculateEASUpdateRuntimeVersion_1.calculateEASUpdateRuntimeVersionFunction)().createBuildStepFromFunctionCall(globalCtx, {
|
|
147
175
|
id: 'calculate_eas_update_runtime_version',
|
|
148
176
|
});
|
|
@@ -166,11 +194,22 @@ function createStepsForAndroidBuildWithoutCredentials({ globalCtx, buildToolsCon
|
|
|
166
194
|
(0, prebuild_1.createPrebuildBuildFunction)().createBuildStepFromFunctionCall(globalCtx),
|
|
167
195
|
calculateEASUpdateRuntimeVersion,
|
|
168
196
|
configureEASUpdate,
|
|
197
|
+
...(((_a = globalCtx.staticContext.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
|
|
198
|
+
semver_1.default.satisfies((_b = globalCtx.staticContext.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')
|
|
199
|
+
? [
|
|
200
|
+
(0, eagerBundle_1.eagerBundleBuildFunction)().createBuildStepFromFunctionCall(globalCtx, {
|
|
201
|
+
callInputs: {
|
|
202
|
+
resolved_eas_update_runtime_version: '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',
|
|
203
|
+
},
|
|
204
|
+
}),
|
|
205
|
+
]
|
|
206
|
+
: []),
|
|
169
207
|
runGradle,
|
|
170
208
|
(0, findAndUploadBuildArtifacts_1.createFindAndUploadBuildArtifactsBuildFunction)(buildToolsContext).createBuildStepFromFunctionCall(globalCtx),
|
|
171
209
|
];
|
|
172
210
|
}
|
|
173
211
|
function createStepsForAndroidBuildWithCredentials({ globalCtx, buildToolsContext, }) {
|
|
212
|
+
var _a, _b;
|
|
174
213
|
const calculateEASUpdateRuntimeVersion = (0, calculateEASUpdateRuntimeVersion_1.calculateEASUpdateRuntimeVersionFunction)().createBuildStepFromFunctionCall(globalCtx, {
|
|
175
214
|
id: 'calculate_eas_update_runtime_version',
|
|
176
215
|
});
|
|
@@ -197,6 +236,16 @@ function createStepsForAndroidBuildWithCredentials({ globalCtx, buildToolsContex
|
|
|
197
236
|
(0, injectAndroidCredentials_1.injectAndroidCredentialsFunction)().createBuildStepFromFunctionCall(globalCtx),
|
|
198
237
|
(0, configureAndroidVersion_1.configureAndroidVersionFunction)().createBuildStepFromFunctionCall(globalCtx),
|
|
199
238
|
runGradle,
|
|
239
|
+
...(((_a = globalCtx.staticContext.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
|
|
240
|
+
semver_1.default.satisfies((_b = globalCtx.staticContext.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')
|
|
241
|
+
? [
|
|
242
|
+
(0, eagerBundle_1.eagerBundleBuildFunction)().createBuildStepFromFunctionCall(globalCtx, {
|
|
243
|
+
callInputs: {
|
|
244
|
+
resolved_eas_update_runtime_version: '${ steps.calculate_eas_update_runtime_version.resolved_eas_update_runtime_version }',
|
|
245
|
+
},
|
|
246
|
+
}),
|
|
247
|
+
]
|
|
248
|
+
: []),
|
|
200
249
|
(0, findAndUploadBuildArtifacts_1.createFindAndUploadBuildArtifactsBuildFunction)(buildToolsContext).createBuildStepFromFunctionCall(globalCtx),
|
|
201
250
|
];
|
|
202
251
|
}
|
|
@@ -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';\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';\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 // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n if (buildToolsContext.job.simulator || !buildToolsContext.job.secrets?.buildCredentials) {\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 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 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 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 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';\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 // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n if (buildToolsContext.job.simulator || !buildToolsContext.job.secrets?.buildCredentials) {\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"]}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.eagerBundleBuildFunction = void 0;
|
|
7
|
+
const steps_1 = require("@expo/steps");
|
|
8
|
+
const semver_1 = __importDefault(require("semver"));
|
|
9
|
+
const eagerBundle_1 = require("../../common/eagerBundle");
|
|
10
|
+
const packageManager_1 = require("../../utils/packageManager");
|
|
11
|
+
function eagerBundleBuildFunction() {
|
|
12
|
+
return new steps_1.BuildFunction({
|
|
13
|
+
namespace: 'eas',
|
|
14
|
+
id: 'eager_bundle',
|
|
15
|
+
name: 'Eager bundle',
|
|
16
|
+
inputProviders: [
|
|
17
|
+
steps_1.BuildStepInput.createProvider({
|
|
18
|
+
id: 'resolved_eas_update_runtime_version',
|
|
19
|
+
required: false,
|
|
20
|
+
allowedValueTypeName: steps_1.BuildStepInputValueTypeName.STRING,
|
|
21
|
+
}),
|
|
22
|
+
],
|
|
23
|
+
fn: async (stepsCtx, { env, inputs }) => {
|
|
24
|
+
var _a, _b;
|
|
25
|
+
const job = stepsCtx.global.staticContext.job;
|
|
26
|
+
if (!job.platform) {
|
|
27
|
+
throw new Error('Custom build job must have platform set');
|
|
28
|
+
}
|
|
29
|
+
if (((_a = stepsCtx.global.staticContext.metadata) === null || _a === void 0 ? void 0 : _a.sdkVersion) &&
|
|
30
|
+
!semver_1.default.satisfies((_b = stepsCtx.global.staticContext.metadata) === null || _b === void 0 ? void 0 : _b.sdkVersion, '>=52')) {
|
|
31
|
+
throw new Error('Eager bundle is not supported for SDK version < 52');
|
|
32
|
+
}
|
|
33
|
+
const packageManager = (0, packageManager_1.resolvePackageManager)(stepsCtx.workingDirectory);
|
|
34
|
+
const resolvedEASUpdateRuntimeVersion = inputs.resolved_eas_update_runtime_version.value;
|
|
35
|
+
await (0, eagerBundle_1.eagerBundleAsync)({
|
|
36
|
+
platform: job.platform,
|
|
37
|
+
workingDir: stepsCtx.workingDirectory,
|
|
38
|
+
logger: stepsCtx.logger,
|
|
39
|
+
env: {
|
|
40
|
+
...env,
|
|
41
|
+
...(resolvedEASUpdateRuntimeVersion
|
|
42
|
+
? { EXPO_UPDATES_FINGERPRINT_OVERRIDE: resolvedEASUpdateRuntimeVersion }
|
|
43
|
+
: null),
|
|
44
|
+
},
|
|
45
|
+
packageManager,
|
|
46
|
+
});
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
exports.eagerBundleBuildFunction = eagerBundleBuildFunction;
|
|
51
|
+
//# sourceMappingURL=eagerBundle.js.map
|
|
@@ -0,0 +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,cAAc;QACpB,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: 'Eager bundle',\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"]}
|
package/dist/utils/project.d.ts
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import { Job } from '@expo/eas-build-job';
|
|
2
1
|
import { SpawnOptions, SpawnPromise, SpawnResult } from '@expo/turtle-spawn';
|
|
3
|
-
import {
|
|
2
|
+
import { PackageManager } from '../utils/packageManager';
|
|
4
3
|
/**
|
|
5
4
|
* check if .yarnrc.yml exists in the project dir or in the workspace root dir
|
|
6
5
|
*/
|
|
7
6
|
export declare function isUsingYarn2(projectDir: string): Promise<boolean>;
|
|
8
|
-
export declare function runExpoCliCommand
|
|
7
|
+
export declare function runExpoCliCommand({ packageManager, args, options, }: {
|
|
8
|
+
packageManager: PackageManager;
|
|
9
|
+
args: string[];
|
|
10
|
+
options: SpawnOptions;
|
|
11
|
+
}): SpawnPromise<SpawnResult>;
|
|
9
12
|
export declare function readPackageJson(projectDir: string): any;
|
package/dist/utils/project.js
CHANGED
|
@@ -17,22 +17,22 @@ async function isUsingYarn2(projectDir) {
|
|
|
17
17
|
return (await fs_extra_1.default.pathExists(yarnrcPath)) || (await fs_extra_1.default.pathExists(yarnrcRootPath));
|
|
18
18
|
}
|
|
19
19
|
exports.isUsingYarn2 = isUsingYarn2;
|
|
20
|
-
function runExpoCliCommand(
|
|
20
|
+
function runExpoCliCommand({ packageManager, args, options, }) {
|
|
21
21
|
const argsWithExpo = ['expo', ...args];
|
|
22
|
-
if (
|
|
22
|
+
if (packageManager === packageManager_1.PackageManager.NPM) {
|
|
23
23
|
return (0, turtle_spawn_1.default)('npx', argsWithExpo, options);
|
|
24
24
|
}
|
|
25
|
-
else if (
|
|
25
|
+
else if (packageManager === packageManager_1.PackageManager.YARN) {
|
|
26
26
|
return (0, turtle_spawn_1.default)('yarn', argsWithExpo, options);
|
|
27
27
|
}
|
|
28
|
-
else if (
|
|
28
|
+
else if (packageManager === packageManager_1.PackageManager.PNPM) {
|
|
29
29
|
return (0, turtle_spawn_1.default)('pnpm', argsWithExpo, options);
|
|
30
30
|
}
|
|
31
|
-
else if (
|
|
31
|
+
else if (packageManager === packageManager_1.PackageManager.BUN) {
|
|
32
32
|
return (0, turtle_spawn_1.default)('bun', argsWithExpo, options);
|
|
33
33
|
}
|
|
34
34
|
else {
|
|
35
|
-
throw new Error(`Unsupported package manager: ${
|
|
35
|
+
throw new Error(`Unsupported package manager: ${packageManager}`);
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
exports.runExpoCliCommand = runExpoCliCommand;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/utils/project.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/utils/project.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAExB,sEAAoF;AACpF,wDAA0B;AAE1B,4DAA8E;AAE9E;;GAEG;AACI,KAAK,UAAU,YAAY,CAAC,UAAkB;IACnD,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,IAAA,oCAAmB,EAAC,UAAU,CAAC,EAAE,aAAa,CAAC,CAAC;IACjF,OAAO,CAAC,MAAM,kBAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,kBAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;AACpF,CAAC;AAJD,oCAIC;AAED,SAAgB,iBAAiB,CAAC,EAChC,cAAc,EACd,IAAI,EACJ,OAAO,GAKR;IACC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;IACvC,IAAI,cAAc,KAAK,+BAAc,CAAC,GAAG,EAAE,CAAC;QAC1C,OAAO,IAAA,sBAAK,EAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;SAAM,IAAI,cAAc,KAAK,+BAAc,CAAC,IAAI,EAAE,CAAC;QAClD,OAAO,IAAA,sBAAK,EAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;SAAM,IAAI,cAAc,KAAK,+BAAc,CAAC,IAAI,EAAE,CAAC;QAClD,OAAO,IAAA,sBAAK,EAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;SAAM,IAAI,cAAc,KAAK,+BAAc,CAAC,GAAG,EAAE,CAAC;QACjD,OAAO,IAAA,sBAAK,EAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,gCAAgC,cAAc,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AArBD,8CAqBC;AAED,SAAgB,eAAe,CAAC,UAAkB;IAChD,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC9D,IAAI,CAAC,kBAAE,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,kCAAkC,UAAU,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,CAAC;QACH,OAAO,kBAAE,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,yCAAyC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAVD,0CAUC","sourcesContent":["import path from 'path';\n\nimport spawn, { SpawnOptions, SpawnPromise, SpawnResult } from '@expo/turtle-spawn';\nimport fs from 'fs-extra';\n\nimport { findPackagerRootDir, PackageManager } from '../utils/packageManager';\n\n/**\n * check if .yarnrc.yml exists in the project dir or in the workspace root dir\n */\nexport async function isUsingYarn2(projectDir: string): Promise<boolean> {\n const yarnrcPath = path.join(projectDir, '.yarnrc.yml');\n const yarnrcRootPath = path.join(findPackagerRootDir(projectDir), '.yarnrc.yml');\n return (await fs.pathExists(yarnrcPath)) || (await fs.pathExists(yarnrcRootPath));\n}\n\nexport function runExpoCliCommand({\n packageManager,\n args,\n options,\n}: {\n packageManager: PackageManager;\n args: string[];\n options: SpawnOptions;\n}): SpawnPromise<SpawnResult> {\n const argsWithExpo = ['expo', ...args];\n if (packageManager === PackageManager.NPM) {\n return spawn('npx', argsWithExpo, options);\n } else if (packageManager === PackageManager.YARN) {\n return spawn('yarn', argsWithExpo, options);\n } else if (packageManager === PackageManager.PNPM) {\n return spawn('pnpm', argsWithExpo, options);\n } else if (packageManager === PackageManager.BUN) {\n return spawn('bun', argsWithExpo, options);\n } else {\n throw new Error(`Unsupported package manager: ${packageManager}`);\n }\n}\n\nexport function readPackageJson(projectDir: string): any {\n const packageJsonPath = path.join(projectDir, 'package.json');\n if (!fs.pathExistsSync(packageJsonPath)) {\n throw new Error(`package.json does not exist in ${projectDir}`);\n }\n try {\n return fs.readJSONSync(packageJsonPath);\n } catch (err: any) {\n throw new Error(`Failed to parse or read package.json: ${err.message}`);\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@expo/build-tools",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.142",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"files": [
|
|
@@ -25,14 +25,14 @@
|
|
|
25
25
|
"@expo/config": "9.0.3",
|
|
26
26
|
"@expo/config-plugins": "8.0.8",
|
|
27
27
|
"@expo/downloader": "1.0.118",
|
|
28
|
-
"@expo/eas-build-job": "1.0.
|
|
28
|
+
"@expo/eas-build-job": "1.0.141",
|
|
29
29
|
"@expo/env": "^0.3.0",
|
|
30
30
|
"@expo/logger": "1.0.117",
|
|
31
31
|
"@expo/package-manager": "1.5.2",
|
|
32
32
|
"@expo/plist": "^0.1.3",
|
|
33
33
|
"@expo/repack-app": "0.0.6",
|
|
34
34
|
"@expo/results": "^1.0.0",
|
|
35
|
-
"@expo/steps": "1.0.
|
|
35
|
+
"@expo/steps": "1.0.141",
|
|
36
36
|
"@expo/template-file": "1.0.117",
|
|
37
37
|
"@expo/turtle-spawn": "1.0.117",
|
|
38
38
|
"@expo/xcpretty": "^4.3.1",
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
"node": "20.14.0",
|
|
71
71
|
"yarn": "1.22.21"
|
|
72
72
|
},
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "c0d75eefa2b7021a797176f2ac2534e5490bd933"
|
|
74
74
|
}
|