@expo/build-tools 1.0.205 → 1.0.206
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/android/credentials.js +1 -2
- package/dist/android/credentials.js.map +1 -1
- package/dist/android/expoUpdates.js +5 -5
- package/dist/android/expoUpdates.js.map +1 -1
- package/dist/android/gradle.d.ts +0 -1
- package/dist/android/gradle.js +3 -4
- package/dist/android/gradle.js.map +1 -1
- package/dist/android/gradleConfig.js +1 -2
- package/dist/android/gradleConfig.js.map +1 -1
- package/dist/buildErrors/detectError.js +1 -2
- package/dist/buildErrors/detectError.js.map +1 -1
- package/dist/builders/android.js +1 -1
- package/dist/builders/android.js.map +1 -1
- package/dist/builders/common.js +1 -2
- package/dist/builders/common.js.map +1 -1
- package/dist/builders/custom.js +1 -2
- package/dist/builders/custom.js.map +1 -1
- package/dist/builders/ios.js +1 -1
- package/dist/builders/ios.js.map +1 -1
- package/dist/common/eagerBundle.d.ts +0 -1
- package/dist/common/eagerBundle.js +2 -3
- package/dist/common/eagerBundle.js.map +1 -1
- package/dist/common/easBuildInternal.d.ts +0 -1
- package/dist/common/easBuildInternal.js +2 -3
- package/dist/common/easBuildInternal.js.map +1 -1
- package/dist/common/git.d.ts +0 -1
- package/dist/common/git.js +1 -2
- package/dist/common/git.js.map +1 -1
- package/dist/common/installDependencies.js +2 -3
- package/dist/common/installDependencies.js.map +1 -1
- package/dist/common/prebuild.d.ts +0 -1
- package/dist/common/prebuild.js +1 -2
- package/dist/common/prebuild.js.map +1 -1
- package/dist/common/projectSources.js +2 -3
- package/dist/common/projectSources.js.map +1 -1
- package/dist/common/setup.js +1 -2
- package/dist/common/setup.js.map +1 -1
- package/dist/context.d.ts +0 -1
- package/dist/customBuildContext.d.ts +0 -1
- package/dist/gcs/LoggerStream.d.ts +0 -2
- package/dist/gcs/client.d.ts +0 -1
- package/dist/gcs/retry.js +1 -2
- package/dist/gcs/retry.js.map +1 -1
- package/dist/generic.js +1 -2
- package/dist/generic.js.map +1 -1
- package/dist/ios/configure.js +2 -3
- package/dist/ios/configure.js.map +1 -1
- package/dist/ios/credentials/distributionCertificate.js +2 -3
- package/dist/ios/credentials/distributionCertificate.js.map +1 -1
- package/dist/ios/credentials/provisioningProfile.d.ts +0 -1
- package/dist/ios/expoUpdates.js +5 -5
- package/dist/ios/expoUpdates.js.map +1 -1
- package/dist/ios/fastfile.js +1 -2
- package/dist/ios/fastfile.js.map +1 -1
- package/dist/ios/fastlane.d.ts +0 -1
- package/dist/ios/fastlane.js +3 -4
- package/dist/ios/fastlane.js.map +1 -1
- package/dist/ios/gymfile.js +2 -3
- package/dist/ios/gymfile.js.map +1 -1
- package/dist/ios/pod.js +1 -2
- package/dist/ios/pod.js.map +1 -1
- package/dist/ios/resign.js +1 -2
- package/dist/ios/resign.js.map +1 -1
- package/dist/ios/resolve.js +3 -4
- package/dist/ios/resolve.js.map +1 -1
- package/dist/ios/tvos.js +1 -2
- package/dist/ios/tvos.js.map +1 -1
- package/dist/ios/xcodeBuildLogs.d.ts +0 -1
- package/dist/ios/xcodeBuildLogs.js +2 -3
- package/dist/ios/xcodeBuildLogs.js.map +1 -1
- package/dist/ios/xcodeEnv.js +1 -2
- package/dist/ios/xcodeEnv.js.map +1 -1
- package/dist/ios/xcpretty.d.ts +0 -1
- package/dist/steps/easFunctionGroups.js +1 -2
- package/dist/steps/easFunctionGroups.js.map +1 -1
- package/dist/steps/easFunctions.js +1 -2
- package/dist/steps/easFunctions.js.map +1 -1
- package/dist/steps/functionGroups/build.js +1 -2
- package/dist/steps/functionGroups/build.js.map +1 -1
- package/dist/steps/functionGroups/maestroTest.js +1 -2
- package/dist/steps/functionGroups/maestroTest.js.map +1 -1
- package/dist/steps/functions/calculateEASUpdateRuntimeVersion.js +1 -2
- package/dist/steps/functions/calculateEASUpdateRuntimeVersion.js.map +1 -1
- package/dist/steps/functions/checkout.js +1 -2
- package/dist/steps/functions/checkout.js.map +1 -1
- package/dist/steps/functions/configureAndroidVersion.js +1 -2
- package/dist/steps/functions/configureAndroidVersion.js.map +1 -1
- package/dist/steps/functions/configureEASUpdateIfInstalled.js +1 -2
- package/dist/steps/functions/configureEASUpdateIfInstalled.js.map +1 -1
- package/dist/steps/functions/configureIosCredentials.js +1 -2
- package/dist/steps/functions/configureIosCredentials.js.map +1 -1
- package/dist/steps/functions/configureIosVersion.js +1 -2
- package/dist/steps/functions/configureIosVersion.js.map +1 -1
- package/dist/steps/functions/createSubmissionEntity.js +1 -2
- package/dist/steps/functions/createSubmissionEntity.js.map +1 -1
- package/dist/steps/functions/downloadArtifact.d.ts +0 -1
- package/dist/steps/functions/downloadArtifact.js +2 -3
- package/dist/steps/functions/downloadArtifact.js.map +1 -1
- package/dist/steps/functions/downloadBuild.d.ts +0 -1
- package/dist/steps/functions/downloadBuild.js +2 -3
- package/dist/steps/functions/downloadBuild.js.map +1 -1
- package/dist/steps/functions/eagerBundle.js +1 -2
- package/dist/steps/functions/eagerBundle.js.map +1 -1
- package/dist/steps/functions/findAndUploadBuildArtifacts.js +1 -2
- package/dist/steps/functions/findAndUploadBuildArtifacts.js.map +1 -1
- package/dist/steps/functions/generateGymfileFromTemplate.js +1 -2
- package/dist/steps/functions/generateGymfileFromTemplate.js.map +1 -1
- package/dist/steps/functions/getCredentialsForBuildTriggeredByGitHubIntegration.js +1 -2
- package/dist/steps/functions/getCredentialsForBuildTriggeredByGitHubIntegration.js.map +1 -1
- package/dist/steps/functions/injectAndroidCredentials.js +1 -2
- package/dist/steps/functions/injectAndroidCredentials.js.map +1 -1
- package/dist/steps/functions/installMaestro.js +14 -16
- package/dist/steps/functions/installMaestro.js.map +1 -1
- package/dist/steps/functions/installNodeModules.js +2 -3
- package/dist/steps/functions/installNodeModules.js.map +1 -1
- package/dist/steps/functions/installPods.js +1 -2
- package/dist/steps/functions/installPods.js.map +1 -1
- package/dist/steps/functions/internalMaestroTest.js +2 -3
- package/dist/steps/functions/internalMaestroTest.js.map +1 -1
- package/dist/steps/functions/prebuild.js +1 -2
- package/dist/steps/functions/prebuild.js.map +1 -1
- package/dist/steps/functions/repack.d.ts +0 -1
- package/dist/steps/functions/repack.js +3 -4
- package/dist/steps/functions/repack.js.map +1 -1
- package/dist/steps/functions/resolveAppleTeamIdFromCredentials.js +1 -2
- package/dist/steps/functions/resolveAppleTeamIdFromCredentials.js.map +1 -1
- package/dist/steps/functions/resolveBuildConfig.d.ts +0 -1
- package/dist/steps/functions/resolveBuildConfig.js +2 -3
- package/dist/steps/functions/resolveBuildConfig.js.map +1 -1
- package/dist/steps/functions/runFastlane.js +1 -2
- package/dist/steps/functions/runFastlane.js.map +1 -1
- package/dist/steps/functions/runGradle.js +1 -2
- package/dist/steps/functions/runGradle.js.map +1 -1
- package/dist/steps/functions/sendSlackMessage.js +1 -2
- package/dist/steps/functions/sendSlackMessage.js.map +1 -1
- package/dist/steps/functions/startAndroidEmulator.js +1 -2
- package/dist/steps/functions/startAndroidEmulator.js.map +1 -1
- package/dist/steps/functions/startIosSimulator.js +1 -2
- package/dist/steps/functions/startIosSimulator.js.map +1 -1
- package/dist/steps/functions/uploadArtifact.js +1 -2
- package/dist/steps/functions/uploadArtifact.js.map +1 -1
- package/dist/steps/functions/useNpmToken.js +1 -2
- package/dist/steps/functions/useNpmToken.js.map +1 -1
- package/dist/steps/utils/android/expoUpdates.js +4 -4
- package/dist/steps/utils/android/expoUpdates.js.map +1 -1
- package/dist/steps/utils/android/gradle.d.ts +0 -1
- package/dist/steps/utils/android/gradle.js +2 -3
- package/dist/steps/utils/android/gradle.js.map +1 -1
- package/dist/steps/utils/android/gradleConfig.d.ts +0 -1
- package/dist/steps/utils/android/gradleConfig.js +2 -3
- package/dist/steps/utils/android/gradleConfig.js.map +1 -1
- package/dist/steps/utils/expoUpdates.d.ts +0 -1
- package/dist/steps/utils/expoUpdates.js +2 -3
- package/dist/steps/utils/expoUpdates.js.map +1 -1
- package/dist/steps/utils/ios/configure.d.ts +0 -1
- package/dist/steps/utils/ios/configure.js +3 -4
- package/dist/steps/utils/ios/configure.js.map +1 -1
- package/dist/steps/utils/ios/credentials/distributionCertificate.js +2 -3
- package/dist/steps/utils/ios/credentials/distributionCertificate.js.map +1 -1
- package/dist/steps/utils/ios/credentials/keychain.d.ts +0 -1
- package/dist/steps/utils/ios/credentials/manager.d.ts +0 -1
- package/dist/steps/utils/ios/credentials/provisioningProfile.d.ts +0 -2
- package/dist/steps/utils/ios/expoUpdates.js +4 -4
- package/dist/steps/utils/ios/expoUpdates.js.map +1 -1
- package/dist/steps/utils/ios/fastlane.d.ts +0 -1
- package/dist/steps/utils/ios/fastlane.js +2 -3
- package/dist/steps/utils/ios/fastlane.js.map +1 -1
- package/dist/steps/utils/ios/resolve.js +2 -3
- package/dist/steps/utils/ios/resolve.js.map +1 -1
- package/dist/steps/utils/ios/tvos.js +1 -2
- package/dist/steps/utils/ios/tvos.js.map +1 -1
- package/dist/steps/utils/ios/xcpretty.d.ts +0 -1
- package/dist/utils/AndroidEmulatorUtils.d.ts +0 -2
- package/dist/utils/IosSimulatorUtils.d.ts +0 -1
- package/dist/utils/appConfig.d.ts +0 -1
- package/dist/utils/appConfig.js +1 -2
- package/dist/utils/appConfig.js.map +1 -1
- package/dist/utils/artifacts.d.ts +0 -1
- package/dist/utils/artifacts.js +5 -5
- package/dist/utils/artifacts.js.map +1 -1
- package/dist/utils/diffFingerprintsAsync.d.ts +0 -1
- package/dist/utils/diffFingerprintsAsync.js +1 -2
- package/dist/utils/diffFingerprintsAsync.js.map +1 -1
- package/dist/utils/environmentSecrets.js +1 -2
- package/dist/utils/environmentSecrets.js.map +1 -1
- package/dist/utils/expoFingerprintCli.js +3 -3
- package/dist/utils/expoFingerprintCli.js.map +1 -1
- package/dist/utils/expoUpdates.d.ts +0 -1
- package/dist/utils/expoUpdates.js +9 -10
- package/dist/utils/expoUpdates.js.map +1 -1
- package/dist/utils/expoUpdatesCli.js +2 -2
- package/dist/utils/expoUpdatesCli.js.map +1 -1
- package/dist/utils/files.js +2 -3
- package/dist/utils/files.js.map +1 -1
- package/dist/utils/findMaestroPathsFlowsToExecuteAsync.d.ts +0 -1
- package/dist/utils/findMaestroPathsFlowsToExecuteAsync.js +1 -2
- package/dist/utils/findMaestroPathsFlowsToExecuteAsync.js.map +1 -1
- package/dist/utils/fingerprint.js +1 -2
- package/dist/utils/fingerprint.js.map +1 -1
- package/dist/utils/getExpoUpdatesPackageVersionIfInstalledAsync.d.ts +0 -1
- package/dist/utils/getExpoUpdatesPackageVersionIfInstalledAsync.js +1 -1
- package/dist/utils/getExpoUpdatesPackageVersionIfInstalledAsync.js.map +1 -1
- package/dist/utils/hooks.js +2 -2
- package/dist/utils/hooks.js.map +1 -1
- package/dist/utils/npmrc.d.ts +0 -1
- package/dist/utils/npmrc.js +1 -2
- package/dist/utils/npmrc.js.map +1 -1
- package/dist/utils/outputs.d.ts +0 -1
- package/dist/utils/outputs.js +2 -3
- package/dist/utils/outputs.js.map +1 -1
- package/dist/utils/packageManager.js +6 -6
- package/dist/utils/packageManager.js.map +1 -1
- package/dist/utils/prepareBuildExecutable.js +1 -2
- package/dist/utils/prepareBuildExecutable.js.map +1 -1
- package/dist/utils/processes.js +1 -2
- package/dist/utils/processes.js.map +1 -1
- package/dist/utils/project.js +3 -4
- package/dist/utils/project.js.map +1 -1
- package/dist/utils/promiseRetryWithCondition.js +1 -2
- package/dist/utils/promiseRetryWithCondition.js.map +1 -1
- package/dist/utils/resolveRuntimeVersionAsync.d.ts +0 -1
- package/dist/utils/resolveRuntimeVersionAsync.js +1 -2
- package/dist/utils/resolveRuntimeVersionAsync.js.map +1 -1
- package/dist/utils/retry.d.ts +0 -1
- package/dist/utils/retry.js +2 -3
- package/dist/utils/retry.js.map +1 -1
- package/dist/utils/retryOnDNSFailure.js +2 -3
- package/dist/utils/retryOnDNSFailure.js.map +1 -1
- package/dist/utils/turtleFetch.d.ts +0 -1
- package/dist/utils/turtleFetch.js +2 -2
- package/dist/utils/turtleFetch.js.map +1 -1
- package/package.json +9 -9
|
@@ -3,7 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.IosMetadataName = void 0;
|
|
7
|
+
exports.iosSetChannelNativelyAsync = iosSetChannelNativelyAsync;
|
|
8
|
+
exports.iosSetRuntimeVersionNativelyAsync = iosSetRuntimeVersionNativelyAsync;
|
|
9
|
+
exports.iosGetNativelyDefinedChannelAsync = iosGetNativelyDefinedChannelAsync;
|
|
7
10
|
const config_plugins_1 = require("@expo/config-plugins");
|
|
8
11
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
9
12
|
const plist_1 = __importDefault(require("@expo/plist"));
|
|
@@ -28,7 +31,6 @@ async function iosSetChannelNativelyAsync(channel, workingDirectory) {
|
|
|
28
31
|
const updatedExpoPlistContents = plist_1.default.build(items);
|
|
29
32
|
await fs_extra_1.default.writeFile(expoPlistPath, updatedExpoPlistContents);
|
|
30
33
|
}
|
|
31
|
-
exports.iosSetChannelNativelyAsync = iosSetChannelNativelyAsync;
|
|
32
34
|
async function iosSetRuntimeVersionNativelyAsync(runtimeVersion, workingDirectory) {
|
|
33
35
|
const expoPlistPath = config_plugins_1.IOSConfig.Paths.getExpoPlistPath(workingDirectory);
|
|
34
36
|
if (!(await fs_extra_1.default.pathExists(expoPlistPath))) {
|
|
@@ -40,7 +42,6 @@ async function iosSetRuntimeVersionNativelyAsync(runtimeVersion, workingDirector
|
|
|
40
42
|
const updatedExpoPlistContents = plist_1.default.build(items);
|
|
41
43
|
await fs_extra_1.default.writeFile(expoPlistPath, updatedExpoPlistContents);
|
|
42
44
|
}
|
|
43
|
-
exports.iosSetRuntimeVersionNativelyAsync = iosSetRuntimeVersionNativelyAsync;
|
|
44
45
|
async function iosGetNativelyDefinedChannelAsync(workingDirectory) {
|
|
45
46
|
var _a, _b;
|
|
46
47
|
const expoPlistPath = config_plugins_1.IOSConfig.Paths.getExpoPlistPath(workingDirectory);
|
|
@@ -57,5 +58,4 @@ async function iosGetNativelyDefinedChannelAsync(workingDirectory) {
|
|
|
57
58
|
throw new Error(`Failed to parse ${IosMetadataName.UPDATES_CONFIGURATION_REQUEST_HEADERS_KEY} from Expo.plist: ${err.message}`);
|
|
58
59
|
}
|
|
59
60
|
}
|
|
60
|
-
exports.iosGetNativelyDefinedChannelAsync = iosGetNativelyDefinedChannelAsync;
|
|
61
61
|
//# sourceMappingURL=expoUpdates.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expoUpdates.js","sourceRoot":"","sources":["../../../../src/steps/utils/ios/expoUpdates.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"expoUpdates.js","sourceRoot":"","sources":["../../../../src/steps/utils/ios/expoUpdates.ts"],"names":[],"mappings":"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","sourcesContent":["import { IOSConfig } from '@expo/config-plugins';\nimport fs from 'fs-extra';\nimport plist from '@expo/plist';\n\nexport enum IosMetadataName {\n UPDATES_CONFIGURATION_REQUEST_HEADERS_KEY = 'EXUpdatesRequestHeaders',\n RELEASE_CHANNEL = 'EXUpdatesReleaseChannel',\n RUNTIME_VERSION = 'EXUpdatesRuntimeVersion',\n}\n\nexport async function iosSetChannelNativelyAsync(\n channel: string,\n workingDirectory: string\n): Promise<void> {\n const expoPlistPath = IOSConfig.Paths.getExpoPlistPath(workingDirectory);\n\n if (!(await fs.pathExists(expoPlistPath))) {\n throw new Error(`${expoPlistPath} does not exist`);\n }\n\n const expoPlistContents = await fs.readFile(expoPlistPath, 'utf8');\n const items: Record<string, string | Record<string, string>> = plist.parse(expoPlistContents);\n items[IosMetadataName.UPDATES_CONFIGURATION_REQUEST_HEADERS_KEY] = {\n ...((items[IosMetadataName.UPDATES_CONFIGURATION_REQUEST_HEADERS_KEY] as Record<\n string,\n string\n >) ?? {}),\n 'expo-channel-name': channel,\n };\n const updatedExpoPlistContents = plist.build(items);\n\n await fs.writeFile(expoPlistPath, updatedExpoPlistContents);\n}\n\nexport async function iosSetRuntimeVersionNativelyAsync(\n runtimeVersion: string,\n workingDirectory: string\n): Promise<void> {\n const expoPlistPath = IOSConfig.Paths.getExpoPlistPath(workingDirectory);\n\n if (!(await fs.pathExists(expoPlistPath))) {\n throw new Error(`${expoPlistPath} does not exist`);\n }\n\n const expoPlistContents = await fs.readFile(expoPlistPath, 'utf8');\n const items = plist.parse(expoPlistContents);\n items[IosMetadataName.RUNTIME_VERSION] = runtimeVersion;\n const updatedExpoPlistContents = plist.build(items);\n\n await fs.writeFile(expoPlistPath, updatedExpoPlistContents);\n}\n\nexport async function iosGetNativelyDefinedChannelAsync(\n workingDirectory: string\n): Promise<string | null> {\n const expoPlistPath = IOSConfig.Paths.getExpoPlistPath(workingDirectory);\n\n if (!(await fs.pathExists(expoPlistPath))) {\n return null;\n }\n\n const expoPlistContents = await fs.readFile(expoPlistPath, 'utf8');\n try {\n const items: Record<string, string | Record<string, string>> = plist.parse(expoPlistContents);\n const updatesRequestHeaders = (items[\n IosMetadataName.UPDATES_CONFIGURATION_REQUEST_HEADERS_KEY\n ] ?? {}) as Record<string, string>;\n return updatesRequestHeaders['expo-channel-name'] ?? null;\n } catch (err: any) {\n throw new Error(\n `Failed to parse ${IosMetadataName.UPDATES_CONFIGURATION_REQUEST_HEADERS_KEY} from Expo.plist: ${err.message}`\n );\n }\n}\n"]}
|
|
@@ -3,7 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.runFastlaneGym = runFastlaneGym;
|
|
7
|
+
exports.runFastlane = runFastlane;
|
|
7
8
|
const path_1 = __importDefault(require("path"));
|
|
8
9
|
const turtle_spawn_1 = __importDefault(require("@expo/turtle-spawn"));
|
|
9
10
|
const fastlane_1 = require("../../../common/fastlane");
|
|
@@ -23,7 +24,6 @@ async function runFastlaneGym({ workingDir, logger, buildLogsDirectory, env, ext
|
|
|
23
24
|
await buildLogger.flush();
|
|
24
25
|
}
|
|
25
26
|
}
|
|
26
|
-
exports.runFastlaneGym = runFastlaneGym;
|
|
27
27
|
async function runFastlane(fastlaneArgs, { logger, env, cwd, extraEnv, } = {}) {
|
|
28
28
|
return await (0, turtle_spawn_1.default)('fastlane', fastlaneArgs, {
|
|
29
29
|
env: {
|
|
@@ -35,5 +35,4 @@ async function runFastlane(fastlaneArgs, { logger, env, cwd, extraEnv, } = {}) {
|
|
|
35
35
|
cwd,
|
|
36
36
|
});
|
|
37
37
|
}
|
|
38
|
-
exports.runFastlane = runFastlane;
|
|
39
38
|
//# sourceMappingURL=fastlane.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastlane.js","sourceRoot":"","sources":["../../../../src/steps/utils/ios/fastlane.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fastlane.js","sourceRoot":"","sources":["../../../../src/steps/utils/ios/fastlane.ts"],"names":[],"mappings":";;;;;AAUA,wCAyBC;AAED,kCAuBC;AA5DD,gDAAwB;AAGxB,sEAAwD;AAGxD,uDAA+D;AAE/D,yCAA8C;AAEvC,KAAK,UAAU,cAAc,CAAC,EACnC,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,GAAG,EACH,QAAQ,GAOT;IACC,MAAM,WAAW,GAAG,IAAI,2BAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC7D,KAAK,WAAW,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;IACnD,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,CAAC,KAAK,CAAC,EAAE;YACzB,GAAG,EAAE,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC;YACjC,MAAM;YACN,GAAG;YACH,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,YAAsB,EACtB,EACE,MAAM,EACN,GAAG,EACH,GAAG,EACH,QAAQ,MAMN,EAAE;IAEN,OAAO,MAAM,IAAA,sBAAK,EAAC,UAAU,EAAE,YAAY,EAAE;QAC3C,GAAG,EAAE;YACH,GAAG,8BAAmB;YACtB,GAAG,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,OAAO,CAAC,GAAG,CAAC;YACvB,GAAG,QAAQ;SACZ;QACD,MAAM;QACN,GAAG;KACJ,CAAC,CAAC;AACL,CAAC","sourcesContent":["import path from 'path';\n\nimport { bunyan } from '@expo/logger';\nimport spawn, { SpawnResult } from '@expo/turtle-spawn';\nimport { BuildStepEnv } from '@expo/steps';\n\nimport { COMMON_FASTLANE_ENV } from '../../../common/fastlane';\n\nimport { XcodeBuildLogger } from './xcpretty';\n\nexport async function runFastlaneGym({\n workingDir,\n logger,\n buildLogsDirectory,\n env,\n extraEnv,\n}: {\n workingDir: string;\n logger: bunyan;\n buildLogsDirectory: string;\n env: BuildStepEnv;\n extraEnv?: BuildStepEnv;\n}): Promise<void> {\n const buildLogger = new XcodeBuildLogger(logger, workingDir);\n void buildLogger.watchLogFiles(buildLogsDirectory);\n try {\n await runFastlane(['gym'], {\n cwd: path.join(workingDir, 'ios'),\n logger,\n env,\n extraEnv,\n });\n } finally {\n await buildLogger.flush();\n }\n}\n\nexport async function runFastlane(\n fastlaneArgs: string[],\n {\n logger,\n env,\n cwd,\n extraEnv,\n }: {\n logger?: bunyan;\n env?: BuildStepEnv;\n cwd?: string;\n extraEnv?: BuildStepEnv;\n } = {}\n): Promise<SpawnResult> {\n return await spawn('fastlane', fastlaneArgs, {\n env: {\n ...COMMON_FASTLANE_ENV,\n ...(env ?? process.env),\n ...extraEnv,\n },\n logger,\n cwd,\n });\n}\n"]}
|
|
@@ -3,7 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.resolveScheme = resolveScheme;
|
|
7
|
+
exports.resolveBuildConfiguration = resolveBuildConfiguration;
|
|
7
8
|
const assert_1 = __importDefault(require("assert"));
|
|
8
9
|
const config_plugins_1 = require("@expo/config-plugins");
|
|
9
10
|
function resolveScheme(workingDir, job, scheme) {
|
|
@@ -17,7 +18,6 @@ function resolveScheme(workingDir, job, scheme) {
|
|
|
17
18
|
(0, assert_1.default)(schemes.length === 1, 'Ejected project should have exactly one scheme');
|
|
18
19
|
return schemes[0];
|
|
19
20
|
}
|
|
20
|
-
exports.resolveScheme = resolveScheme;
|
|
21
21
|
function resolveBuildConfiguration(job, buildConfiguration) {
|
|
22
22
|
if (buildConfiguration) {
|
|
23
23
|
return buildConfiguration;
|
|
@@ -32,5 +32,4 @@ function resolveBuildConfiguration(job, buildConfiguration) {
|
|
|
32
32
|
return 'Release';
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
-
exports.resolveBuildConfiguration = resolveBuildConfiguration;
|
|
36
35
|
//# sourceMappingURL=resolve.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../../src/steps/utils/ios/resolve.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../../src/steps/utils/ios/resolve.ts"],"names":[],"mappings":";;;;;AAKA,sCAUC;AAED,8DAUC;AA3BD,oDAA4B;AAG5B,yDAAiD;AAEjD,SAAgB,aAAa,CAAC,UAAkB,EAAE,GAAY,EAAE,MAAe;IAC7E,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QACf,OAAO,GAAG,CAAC,MAAM,CAAC;IACpB,CAAC;IACD,MAAM,OAAO,GAAG,0BAAS,CAAC,WAAW,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAC1E,IAAA,gBAAM,EAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,gDAAgD,CAAC,CAAC;IAC/E,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,SAAgB,yBAAyB,CAAC,GAAY,EAAE,kBAA2B;IACjF,IAAI,kBAAkB,EAAE,CAAC;QACvB,OAAO,kBAAkB,CAAC;IAC5B,CAAC;SAAM,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAClC,OAAO,GAAG,CAAC,kBAAkB,CAAC;IAChC,CAAC;SAAM,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACjC,OAAO,OAAO,CAAC;IACjB,CAAC;SAAM,CAAC;QACN,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC","sourcesContent":["import assert from 'assert';\n\nimport { Ios } from '@expo/eas-build-job';\nimport { IOSConfig } from '@expo/config-plugins';\n\nexport function resolveScheme(workingDir: string, job: Ios.Job, scheme?: string): string {\n if (scheme) {\n return scheme;\n }\n if (job.scheme) {\n return job.scheme;\n }\n const schemes = IOSConfig.BuildScheme.getSchemesFromXcodeproj(workingDir);\n assert(schemes.length === 1, 'Ejected project should have exactly one scheme');\n return schemes[0];\n}\n\nexport function resolveBuildConfiguration(job: Ios.Job, buildConfiguration?: string): string {\n if (buildConfiguration) {\n return buildConfiguration;\n } else if (job.buildConfiguration) {\n return job.buildConfiguration;\n } else if (job.developmentClient) {\n return 'Debug';\n } else {\n return 'Release';\n }\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isTVOS =
|
|
3
|
+
exports.isTVOS = isTVOS;
|
|
4
4
|
const config_plugins_1 = require("@expo/config-plugins");
|
|
5
5
|
async function isTVOS({ scheme, buildConfiguration, workingDir, }) {
|
|
6
6
|
var _a, _b;
|
|
@@ -12,5 +12,4 @@ async function isTVOS({ scheme, buildConfiguration, workingDir, }) {
|
|
|
12
12
|
});
|
|
13
13
|
return (_b = (_a = xcBuildConfiguration === null || xcBuildConfiguration === void 0 ? void 0 : xcBuildConfiguration.buildSettings) === null || _a === void 0 ? void 0 : _a.SDKROOT) === null || _b === void 0 ? void 0 : _b.includes('appletv');
|
|
14
14
|
}
|
|
15
|
-
exports.isTVOS = isTVOS;
|
|
16
15
|
//# sourceMappingURL=tvos.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tvos.js","sourceRoot":"","sources":["../../../../src/steps/utils/ios/tvos.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tvos.js","sourceRoot":"","sources":["../../../../src/steps/utils/ios/tvos.ts"],"names":[],"mappings":";;AAEA,wBAqBC;AAvBD,yDAAiD;AAE1C,KAAK,UAAU,MAAM,CAAC,EAC3B,MAAM,EACN,kBAAkB,EAClB,UAAU,GAKX;;IACC,MAAM,OAAO,GAAG,0BAAS,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAE5D,MAAM,UAAU,GAAG,MAAM,0BAAS,CAAC,WAAW,CAAC,sCAAsC,CACnF,UAAU,EACV,MAAM,CACP,CAAC;IAEF,MAAM,oBAAoB,GAAG,0BAAS,CAAC,MAAM,CAAC,kCAAkC,CAAC,OAAO,EAAE;QACxF,UAAU;QACV,kBAAkB;KACnB,CAAC,CAAC;IACH,OAAO,MAAA,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,aAAa,0CAAE,OAAO,0CAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC3E,CAAC","sourcesContent":["import { IOSConfig } from '@expo/config-plugins';\n\nexport async function isTVOS({\n scheme,\n buildConfiguration,\n workingDir,\n}: {\n scheme: string;\n buildConfiguration: string;\n workingDir: string;\n}): Promise<boolean> {\n const project = IOSConfig.XcodeUtils.getPbxproj(workingDir);\n\n const targetName = await IOSConfig.BuildScheme.getApplicationTargetNameForSchemeAsync(\n workingDir,\n scheme\n );\n\n const xcBuildConfiguration = IOSConfig.Target.getXCBuildConfigurationFromPbxproj(project, {\n targetName,\n buildConfiguration,\n });\n return xcBuildConfiguration?.buildSettings?.SDKROOT?.includes('appletv');\n}\n"]}
|
package/dist/utils/appConfig.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.readAppConfig =
|
|
6
|
+
exports.readAppConfig = readAppConfig;
|
|
7
7
|
const config_1 = require("@expo/config");
|
|
8
8
|
const logger_1 = require("@expo/logger");
|
|
9
9
|
const env_1 = require("@expo/env");
|
|
@@ -53,5 +53,4 @@ function readAppConfig({ projectDir, env, logger, sdkVersion, }) {
|
|
|
53
53
|
process.stderr.write = originalStderrWrite;
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
|
-
exports.readAppConfig = readAppConfig;
|
|
57
56
|
//# sourceMappingURL=appConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appConfig.js","sourceRoot":"","sources":["../../src/utils/appConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"appConfig.js","sourceRoot":"","sources":["../../src/utils/appConfig.ts"],"names":[],"mappings":";;;;;AAMA,sCAqDC;AA3DD,yCAAwD;AAExD,yCAAmD;AACnD,mCAAiC;AACjC,oDAA4B;AAE5B,SAAgB,aAAa,CAAC,EAC5B,UAAU,EACV,GAAG,EACH,MAAM,EACN,UAAU,GAMX;IACC,MAAM,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IACzC,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IACjD,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IACjD,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC;IAEvC,MAAM,WAAW,GAA2C,EAAE,CAAC;IAC/D,MAAM,+BAA+B,GAAG,UAAU,IAAI,gBAAM,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC3F,MAAM,qBAAqB,GAAG,+BAA+B,CAAC,CAAC,CAAC,IAAA,UAAI,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,YAAY,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC1D,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,GAAG,YAAY,CAAC;QAC3B,OAAO,CAAC,IAAI,GAAG,GAAG,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC,CAAC;QACF,OAAO,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC;QAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,UAAU,GAAG,IAAS;YAC3C,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAW,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,OAAO,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,UAAU,GAAG,IAAS;YAC3C,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAW,CAAC,KAAK,EAAE,CAAC,CAAC;YACtE,OAAO,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,OAAO,IAAA,kBAAS,EAAC,UAAU,EAAE;YAC3B,yBAAyB,EAAE,IAAI;YAC/B,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,mBAAmB,CAAC;QAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,mBAAmB,CAAC;QAC3C,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;YACtC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,MAAM,GAAG,CAAC;IACZ,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,GAAG,GAAG,kBAAkB,CAAC;QACjC,OAAO,CAAC,IAAI,GAAG,mBAAmB,CAAC;QACnC,OAAO,CAAC,GAAG,GAAG,kBAAkB,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,mBAAmB,CAAC;QAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,mBAAmB,CAAC;IAC7C,CAAC;AACH,CAAC","sourcesContent":["import { getConfig, ProjectConfig } from '@expo/config';\nimport { Env } from '@expo/eas-build-job';\nimport { bunyan, LoggerLevel } from '@expo/logger';\nimport { load } from '@expo/env';\nimport semver from 'semver';\n\nexport function readAppConfig({\n projectDir,\n env,\n logger,\n sdkVersion,\n}: {\n projectDir: string;\n env: Env;\n logger: bunyan;\n sdkVersion?: string;\n}): ProjectConfig {\n const originalProcessExit = process.exit;\n const originalProcessCwd = process.cwd;\n const originalStdoutWrite = process.stdout.write;\n const originalStderrWrite = process.stderr.write;\n const originalProcessEnv = process.env;\n\n const stdoutStore: { text: string; level: LoggerLevel }[] = [];\n const shouldLoadEnvVarsFromDotenvFile = sdkVersion && semver.satisfies(sdkVersion, '>=49');\n const envVarsFromDotenvFile = shouldLoadEnvVarsFromDotenvFile ? load(projectDir) : {};\n const newEnvsToUse = { ...env, ...envVarsFromDotenvFile };\n try {\n process.env = newEnvsToUse;\n process.exit = () => {\n throw new Error('Failed to evaluate app config file');\n };\n process.cwd = () => projectDir;\n process.stdout.write = function (...args: any) {\n stdoutStore.push({ text: String(args[0]), level: LoggerLevel.INFO });\n return originalStdoutWrite.apply(process.stdout, args);\n };\n process.stderr.write = function (...args: any) {\n stdoutStore.push({ text: String(args[0]), level: LoggerLevel.ERROR });\n return originalStderrWrite.apply(process.stderr, args);\n };\n return getConfig(projectDir, {\n skipSDKVersionRequirement: true,\n isPublicConfig: true,\n });\n } catch (err) {\n process.stdout.write = originalStdoutWrite;\n process.stderr.write = originalStderrWrite;\n stdoutStore.forEach(({ text, level }) => {\n logger[level](text.trim());\n });\n throw err;\n } finally {\n process.env = originalProcessEnv;\n process.exit = originalProcessExit;\n process.cwd = originalProcessCwd;\n process.stdout.write = originalStdoutWrite;\n process.stderr.write = originalStderrWrite;\n }\n}\n"]}
|
package/dist/utils/artifacts.js
CHANGED
|
@@ -3,7 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.FindArtifactsError = void 0;
|
|
7
|
+
exports.findArtifacts = findArtifacts;
|
|
8
|
+
exports.maybeFindAndUploadBuildArtifacts = maybeFindAndUploadBuildArtifacts;
|
|
9
|
+
exports.uploadApplicationArchive = uploadApplicationArchive;
|
|
10
|
+
exports.formatBytes = formatBytes;
|
|
7
11
|
const path_1 = __importDefault(require("path"));
|
|
8
12
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
9
13
|
const fast_glob_1 = __importDefault(require("fast-glob"));
|
|
@@ -40,7 +44,6 @@ async function findArtifacts({ rootDir, patternOrPath, logger, }) {
|
|
|
40
44
|
return path_1.default.join(rootDir, filePath);
|
|
41
45
|
});
|
|
42
46
|
}
|
|
43
|
-
exports.findArtifacts = findArtifacts;
|
|
44
47
|
async function logMissingFileError(artifactPath, buildLogger) {
|
|
45
48
|
let currentPath = artifactPath;
|
|
46
49
|
while (!(await fs_extra_1.default.pathExists(currentPath))) {
|
|
@@ -87,7 +90,6 @@ async function maybeFindAndUploadBuildArtifacts(ctx, { logger }) {
|
|
|
87
90
|
logger.error({ err }, 'Failed to upload build artifacts');
|
|
88
91
|
}
|
|
89
92
|
}
|
|
90
|
-
exports.maybeFindAndUploadBuildArtifacts = maybeFindAndUploadBuildArtifacts;
|
|
91
93
|
async function uploadApplicationArchive(ctx, { logger, patternOrPath, rootDir, }) {
|
|
92
94
|
const applicationArchives = await findArtifacts({ rootDir, patternOrPath, logger });
|
|
93
95
|
const artifactsSizes = await getArtifactsSizes(applicationArchives);
|
|
@@ -105,7 +107,6 @@ async function uploadApplicationArchive(ctx, { logger, patternOrPath, rootDir, }
|
|
|
105
107
|
logger,
|
|
106
108
|
});
|
|
107
109
|
}
|
|
108
|
-
exports.uploadApplicationArchive = uploadApplicationArchive;
|
|
109
110
|
async function getArtifactsSizes(artifacts) {
|
|
110
111
|
const artifactsSizes = {};
|
|
111
112
|
await Promise.all(artifacts.map(async (artifact) => {
|
|
@@ -163,5 +164,4 @@ function formatBytes(bytes) {
|
|
|
163
164
|
}
|
|
164
165
|
return `${Math.floor(bytes / 1024)} GB`;
|
|
165
166
|
}
|
|
166
|
-
exports.formatBytes = formatBytes;
|
|
167
167
|
//# sourceMappingURL=artifacts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../src/utils/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\n\nimport fs from 'fs-extra';\nimport fg from 'fast-glob';\nimport { bunyan } from '@expo/logger';\nimport { ManagedArtifactType, Job, BuildJob } from '@expo/eas-build-job';\nimport promiseLimit from 'promise-limit';\n\nimport { BuildContext } from '../context';\n\nexport class FindArtifactsError extends Error {}\n\nexport async function findArtifacts({\n rootDir,\n patternOrPath,\n logger,\n}: {\n rootDir: string;\n patternOrPath: string;\n /** If provided, will log error suggesting possible files to upload. */\n logger: bunyan | null;\n}): Promise<string[]> {\n const files = path.isAbsolute(patternOrPath)\n ? (await fs.pathExists(patternOrPath))\n ? [patternOrPath]\n : []\n : await fg(patternOrPath, { cwd: rootDir, onlyFiles: false });\n if (files.length === 0) {\n if (fg.isDynamicPattern(patternOrPath)) {\n throw new FindArtifactsError(`There are no files matching pattern \"${patternOrPath}\"`);\n } else {\n if (logger) {\n await logMissingFileError(path.join(rootDir, patternOrPath), logger);\n }\n throw new FindArtifactsError(`No such file or directory ${patternOrPath}`);\n }\n }\n\n return files.map((filePath) => {\n // User may provide an absolute path as input in which case\n // fg will return an absolute path.\n if (path.isAbsolute(filePath)) {\n return filePath;\n }\n\n // User may also provide a relative path in which case\n // fg will return a path relative to rootDir.\n return path.join(rootDir, filePath);\n });\n}\n\nasync function logMissingFileError(artifactPath: string, buildLogger: bunyan): Promise<void> {\n let currentPath = artifactPath;\n while (!(await fs.pathExists(currentPath))) {\n currentPath = path.resolve(currentPath, '..');\n }\n if (currentPath === path.resolve(currentPath, '..')) {\n buildLogger.error(`There is no such file or directory \"${artifactPath}\".`);\n return;\n }\n const dirContent = await fs.readdir(currentPath);\n if (dirContent.length === 0) {\n buildLogger.error(\n `There is no such file or directory \"${artifactPath}\". Directory \"${currentPath}\" is empty.`\n );\n } else {\n buildLogger.error(\n `There is no such file or directory \"${artifactPath}\". Directory \"${currentPath}\" contains [${dirContent.join(\n ', '\n )}].`\n );\n }\n}\n\nexport async function maybeFindAndUploadBuildArtifacts(\n ctx: BuildContext<BuildJob>,\n { logger }: { logger: bunyan }\n): Promise<void> {\n if (!ctx.job.buildArtifactPaths || ctx.job.buildArtifactPaths.length === 0) {\n return;\n }\n try {\n const buildArtifacts = (\n await Promise.all(\n ctx.job.buildArtifactPaths.map((path) =>\n findArtifacts({\n rootDir: ctx.getReactNativeProjectDirectory(),\n patternOrPath: path,\n logger,\n })\n )\n )\n ).flat();\n const artifactsSizes = await getArtifactsSizes(buildArtifacts);\n logger.info(`Build artifacts:`);\n for (const artifactPath of buildArtifacts) {\n const maybeSize = artifactsSizes[artifactPath];\n logger.info(` - ${artifactPath}${maybeSize ? ` (${formatBytes(maybeSize)})` : ''}`);\n }\n logger.info('Uploading build artifacts...');\n await ctx.uploadArtifact({\n artifact: {\n type: ManagedArtifactType.BUILD_ARTIFACTS,\n paths: buildArtifacts,\n },\n logger,\n });\n } catch (err: any) {\n logger.error({ err }, 'Failed to upload build artifacts');\n }\n}\n\nexport async function uploadApplicationArchive(\n ctx: BuildContext<Job>,\n {\n logger,\n patternOrPath,\n rootDir,\n }: {\n logger: bunyan;\n patternOrPath: string;\n rootDir: string;\n }\n): Promise<void> {\n const applicationArchives = await findArtifacts({ rootDir, patternOrPath, logger });\n const artifactsSizes = await getArtifactsSizes(applicationArchives);\n logger.info(`Application archives:`);\n for (const artifactPath of applicationArchives) {\n const maybeSize = artifactsSizes[artifactPath];\n logger.info(` - ${artifactPath}${maybeSize ? ` (${formatBytes(maybeSize)})` : ''}`);\n }\n logger.info('Uploading application archive...');\n await ctx.uploadArtifact({\n artifact: {\n type: ManagedArtifactType.APPLICATION_ARCHIVE,\n paths: applicationArchives,\n },\n logger,\n });\n}\n\nasync function getArtifactsSizes(artifacts: string[]): Promise<Record<string, number | undefined>> {\n const artifactsSizes: Record<string, number | undefined> = {};\n await Promise.all(\n artifacts.map(async (artifact) => {\n artifactsSizes[artifact] = await getArtifactSize(artifact);\n })\n );\n return artifactsSizes;\n}\n\nasync function getArtifactSize(artifact: string): Promise<number | undefined> {\n try {\n const stat = await fs.stat(artifact);\n if (!stat.isDirectory()) {\n return stat.size;\n } else {\n const files = await fg('**/*', { cwd: artifact, onlyFiles: true });\n\n if (files.length > 100_000) {\n return undefined;\n }\n\n const getFileSizePromiseLimit = promiseLimit<number>(100);\n const sizes = await Promise.all(\n files.map((file) =>\n getFileSizePromiseLimit(async () => (await fs.stat(path.join(artifact, file))).size)\n )\n );\n return sizes.reduce((acc, size) => acc + size, 0);\n }\n } catch {\n return undefined;\n }\n}\n\n// same as in\n// https://github.com/expo/eas-cli/blob/f0e3b648a1634266e7d723bd49a84866ab9b5801/packages/eas-cli/src/utils/files.ts#L33-L60\nexport function formatBytes(bytes: number): string {\n if (bytes === 0) {\n return `0`;\n }\n let multiplier = 1;\n if (bytes < 1024 * multiplier) {\n return `${Math.floor(bytes)} B`;\n }\n multiplier *= 1024;\n if (bytes < 102.4 * multiplier) {\n return `${(bytes / multiplier).toFixed(1)} KB`;\n }\n if (bytes < 1024 * multiplier) {\n return `${Math.floor(bytes / 1024)} KB`;\n }\n multiplier *= 1024;\n if (bytes < 102.4 * multiplier) {\n return `${(bytes / multiplier).toFixed(1)} MB`;\n }\n if (bytes < 1024 * multiplier) {\n return `${Math.floor(bytes / multiplier)} MB`;\n }\n multiplier *= 1024;\n if (bytes < 102.4 * multiplier) {\n return `${(bytes / multiplier).toFixed(1)} GB`;\n }\n return `${Math.floor(bytes / 1024)} GB`;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../src/utils/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\n\nimport fs from 'fs-extra';\nimport fg from 'fast-glob';\nimport { bunyan } from '@expo/logger';\nimport { ManagedArtifactType, Job, BuildJob } from '@expo/eas-build-job';\nimport promiseLimit from 'promise-limit';\n\nimport { BuildContext } from '../context';\n\nexport class FindArtifactsError extends Error {}\n\nexport async function findArtifacts({\n rootDir,\n patternOrPath,\n logger,\n}: {\n rootDir: string;\n patternOrPath: string;\n /** If provided, will log error suggesting possible files to upload. */\n logger: bunyan | null;\n}): Promise<string[]> {\n const files = path.isAbsolute(patternOrPath)\n ? (await fs.pathExists(patternOrPath))\n ? [patternOrPath]\n : []\n : await fg(patternOrPath, { cwd: rootDir, onlyFiles: false });\n if (files.length === 0) {\n if (fg.isDynamicPattern(patternOrPath)) {\n throw new FindArtifactsError(`There are no files matching pattern \"${patternOrPath}\"`);\n } else {\n if (logger) {\n await logMissingFileError(path.join(rootDir, patternOrPath), logger);\n }\n throw new FindArtifactsError(`No such file or directory ${patternOrPath}`);\n }\n }\n\n return files.map((filePath) => {\n // User may provide an absolute path as input in which case\n // fg will return an absolute path.\n if (path.isAbsolute(filePath)) {\n return filePath;\n }\n\n // User may also provide a relative path in which case\n // fg will return a path relative to rootDir.\n return path.join(rootDir, filePath);\n });\n}\n\nasync function logMissingFileError(artifactPath: string, buildLogger: bunyan): Promise<void> {\n let currentPath = artifactPath;\n while (!(await fs.pathExists(currentPath))) {\n currentPath = path.resolve(currentPath, '..');\n }\n if (currentPath === path.resolve(currentPath, '..')) {\n buildLogger.error(`There is no such file or directory \"${artifactPath}\".`);\n return;\n }\n const dirContent = await fs.readdir(currentPath);\n if (dirContent.length === 0) {\n buildLogger.error(\n `There is no such file or directory \"${artifactPath}\". Directory \"${currentPath}\" is empty.`\n );\n } else {\n buildLogger.error(\n `There is no such file or directory \"${artifactPath}\". Directory \"${currentPath}\" contains [${dirContent.join(\n ', '\n )}].`\n );\n }\n}\n\nexport async function maybeFindAndUploadBuildArtifacts(\n ctx: BuildContext<BuildJob>,\n { logger }: { logger: bunyan }\n): Promise<void> {\n if (!ctx.job.buildArtifactPaths || ctx.job.buildArtifactPaths.length === 0) {\n return;\n }\n try {\n const buildArtifacts = (\n await Promise.all(\n ctx.job.buildArtifactPaths.map((path) =>\n findArtifacts({\n rootDir: ctx.getReactNativeProjectDirectory(),\n patternOrPath: path,\n logger,\n })\n )\n )\n ).flat();\n const artifactsSizes = await getArtifactsSizes(buildArtifacts);\n logger.info(`Build artifacts:`);\n for (const artifactPath of buildArtifacts) {\n const maybeSize = artifactsSizes[artifactPath];\n logger.info(` - ${artifactPath}${maybeSize ? ` (${formatBytes(maybeSize)})` : ''}`);\n }\n logger.info('Uploading build artifacts...');\n await ctx.uploadArtifact({\n artifact: {\n type: ManagedArtifactType.BUILD_ARTIFACTS,\n paths: buildArtifacts,\n },\n logger,\n });\n } catch (err: any) {\n logger.error({ err }, 'Failed to upload build artifacts');\n }\n}\n\nexport async function uploadApplicationArchive(\n ctx: BuildContext<Job>,\n {\n logger,\n patternOrPath,\n rootDir,\n }: {\n logger: bunyan;\n patternOrPath: string;\n rootDir: string;\n }\n): Promise<void> {\n const applicationArchives = await findArtifacts({ rootDir, patternOrPath, logger });\n const artifactsSizes = await getArtifactsSizes(applicationArchives);\n logger.info(`Application archives:`);\n for (const artifactPath of applicationArchives) {\n const maybeSize = artifactsSizes[artifactPath];\n logger.info(` - ${artifactPath}${maybeSize ? ` (${formatBytes(maybeSize)})` : ''}`);\n }\n logger.info('Uploading application archive...');\n await ctx.uploadArtifact({\n artifact: {\n type: ManagedArtifactType.APPLICATION_ARCHIVE,\n paths: applicationArchives,\n },\n logger,\n });\n}\n\nasync function getArtifactsSizes(artifacts: string[]): Promise<Record<string, number | undefined>> {\n const artifactsSizes: Record<string, number | undefined> = {};\n await Promise.all(\n artifacts.map(async (artifact) => {\n artifactsSizes[artifact] = await getArtifactSize(artifact);\n })\n );\n return artifactsSizes;\n}\n\nasync function getArtifactSize(artifact: string): Promise<number | undefined> {\n try {\n const stat = await fs.stat(artifact);\n if (!stat.isDirectory()) {\n return stat.size;\n } else {\n const files = await fg('**/*', { cwd: artifact, onlyFiles: true });\n\n if (files.length > 100_000) {\n return undefined;\n }\n\n const getFileSizePromiseLimit = promiseLimit<number>(100);\n const sizes = await Promise.all(\n files.map((file) =>\n getFileSizePromiseLimit(async () => (await fs.stat(path.join(artifact, file))).size)\n )\n );\n return sizes.reduce((acc, size) => acc + size, 0);\n }\n } catch {\n return undefined;\n }\n}\n\n// same as in\n// https://github.com/expo/eas-cli/blob/f0e3b648a1634266e7d723bd49a84866ab9b5801/packages/eas-cli/src/utils/files.ts#L33-L60\nexport function formatBytes(bytes: number): string {\n if (bytes === 0) {\n return `0`;\n }\n let multiplier = 1;\n if (bytes < 1024 * multiplier) {\n return `${Math.floor(bytes)} B`;\n }\n multiplier *= 1024;\n if (bytes < 102.4 * multiplier) {\n return `${(bytes / multiplier).toFixed(1)} KB`;\n }\n if (bytes < 1024 * multiplier) {\n return `${Math.floor(bytes / 1024)} KB`;\n }\n multiplier *= 1024;\n if (bytes < 102.4 * multiplier) {\n return `${(bytes / multiplier).toFixed(1)} MB`;\n }\n if (bytes < 1024 * multiplier) {\n return `${Math.floor(bytes / multiplier)} MB`;\n }\n multiplier *= 1024;\n if (bytes < 102.4 * multiplier) {\n return `${(bytes / multiplier).toFixed(1)} GB`;\n }\n return `${Math.floor(bytes / 1024)} GB`;\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.diffFingerprintsAsync =
|
|
3
|
+
exports.diffFingerprintsAsync = diffFingerprintsAsync;
|
|
4
4
|
const expoFingerprintCli_1 = require("./expoFingerprintCli");
|
|
5
5
|
async function diffFingerprintsAsync(projectDir, fingerprint1File, fingerprint2File, { env, logger }) {
|
|
6
6
|
if (!(await (0, expoFingerprintCli_1.isModernExpoFingerprintCLISupportedAsync)(projectDir))) {
|
|
@@ -22,5 +22,4 @@ async function diffFingerprintsAsync(projectDir, fingerprint1File, fingerprint2F
|
|
|
22
22
|
throw e;
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
exports.diffFingerprintsAsync = diffFingerprintsAsync;
|
|
26
25
|
//# sourceMappingURL=diffFingerprintsAsync.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diffFingerprintsAsync.js","sourceRoot":"","sources":["../../src/utils/diffFingerprintsAsync.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"diffFingerprintsAsync.js","sourceRoot":"","sources":["../../src/utils/diffFingerprintsAsync.ts"],"names":[],"mappings":";;AAWA,sDA8BC;AAtCD,6DAM8B;AAEvB,KAAK,UAAU,qBAAqB,CACzC,UAAkB,EAClB,gBAAwB,EACxB,gBAAwB,EACxB,EAAE,GAAG,EAAE,MAAM,EAAyC;IAEtD,IAAI,CAAC,CAAC,MAAM,IAAA,6DAAwC,EAAC,UAAU,CAAC,CAAC,EAAE,CAAC;QAClE,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,IAAA,gDAA2B,EACtC,UAAU,EACV,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,EACxD;YACE,GAAG;SACJ,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IACE,CAAC,YAAY,0DAAqC;YAClD,CAAC,YAAY,yDAAoC;YACjD,CAAC,YAAY,0DAAqC,EAClD,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC","sourcesContent":["import { BuildStepEnv } from '@expo/steps';\nimport { bunyan } from '@expo/logger';\n\nimport {\n ExpoFingerprintCLICommandFailedError,\n ExpoFingerprintCLIInvalidCommandError,\n ExpoFingerprintCLIModuleNotFoundError,\n expoFingerprintCommandAsync,\n isModernExpoFingerprintCLISupportedAsync,\n} from './expoFingerprintCli';\n\nexport async function diffFingerprintsAsync(\n projectDir: string,\n fingerprint1File: string,\n fingerprint2File: string,\n { env, logger }: { env: BuildStepEnv; logger: bunyan }\n): Promise<string | null> {\n if (!(await isModernExpoFingerprintCLISupportedAsync(projectDir))) {\n logger.debug('Fingerprint diff not available');\n return null;\n }\n\n try {\n return await expoFingerprintCommandAsync(\n projectDir,\n ['fingerprint:diff', fingerprint1File, fingerprint2File],\n {\n env,\n }\n );\n } catch (e) {\n if (\n e instanceof ExpoFingerprintCLIModuleNotFoundError ||\n e instanceof ExpoFingerprintCLICommandFailedError ||\n e instanceof ExpoFingerprintCLIInvalidCommandError\n ) {\n logger.debug('Fingerprint diff not available');\n return null;\n }\n throw e;\n }\n}\n"]}
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createTemporaryEnvironmentSecretFile =
|
|
6
|
+
exports.createTemporaryEnvironmentSecretFile = createTemporaryEnvironmentSecretFile;
|
|
7
7
|
const fs_1 = __importDefault(require("fs"));
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
const uuid_1 = require("uuid");
|
|
@@ -12,5 +12,4 @@ function createTemporaryEnvironmentSecretFile(secretsDir, value) {
|
|
|
12
12
|
fs_1.default.writeFileSync(randomFilePath, Buffer.from(value, 'base64'));
|
|
13
13
|
return randomFilePath;
|
|
14
14
|
}
|
|
15
|
-
exports.createTemporaryEnvironmentSecretFile = createTemporaryEnvironmentSecretFile;
|
|
16
15
|
//# sourceMappingURL=environmentSecrets.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environmentSecrets.js","sourceRoot":"","sources":["../../src/utils/environmentSecrets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"environmentSecrets.js","sourceRoot":"","sources":["../../src/utils/environmentSecrets.ts"],"names":[],"mappings":";;;;;AAKA,oFAIC;AATD,4CAAoB;AACpB,gDAAwB;AAExB,+BAAkC;AAElC,SAAgB,oCAAoC,CAAC,UAAkB,EAAE,KAAa;IACpF,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAA,SAAI,GAAE,CAAC,CAAC;IACrD,YAAE,CAAC,aAAa,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC/D,OAAO,cAAc,CAAC;AACxB,CAAC","sourcesContent":["import fs from 'fs';\nimport path from 'path';\n\nimport { v4 as uuid } from 'uuid';\n\nexport function createTemporaryEnvironmentSecretFile(secretsDir: string, value: string): string {\n const randomFilePath = path.join(secretsDir, uuid());\n fs.writeFileSync(randomFilePath, Buffer.from(value, 'base64'));\n return randomFilePath;\n}\n"]}
|
|
@@ -3,7 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.ExpoFingerprintCLICommandFailedError = exports.ExpoFingerprintCLIInvalidCommandError = exports.ExpoFingerprintCLIModuleNotFoundError = void 0;
|
|
7
|
+
exports.expoFingerprintCommandAsync = expoFingerprintCommandAsync;
|
|
8
|
+
exports.isModernExpoFingerprintCLISupportedAsync = isModernExpoFingerprintCLISupportedAsync;
|
|
7
9
|
const resolve_from_1 = __importDefault(require("resolve-from"));
|
|
8
10
|
const turtle_spawn_1 = __importDefault(require("@expo/turtle-spawn"));
|
|
9
11
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
@@ -52,7 +54,6 @@ async function expoFingerprintCommandAsync(projectDir, args, { env }) {
|
|
|
52
54
|
throw e;
|
|
53
55
|
}
|
|
54
56
|
}
|
|
55
|
-
exports.expoFingerprintCommandAsync = expoFingerprintCommandAsync;
|
|
56
57
|
async function getExpoFingerprintPackageVersionIfInstalledAsync(projectDir) {
|
|
57
58
|
const expoPackageRoot = resolve_from_1.default.silent(projectDir, 'expo/package.json');
|
|
58
59
|
const maybePackageJson = resolve_from_1.default.silent(expoPackageRoot !== null && expoPackageRoot !== void 0 ? expoPackageRoot : projectDir, '@expo/fingerprint/package.json');
|
|
@@ -72,5 +73,4 @@ async function isModernExpoFingerprintCLISupportedAsync(projectDir) {
|
|
|
72
73
|
}
|
|
73
74
|
return semver_1.default.gte(expoFingerprintPackageVersion, '0.11.2');
|
|
74
75
|
}
|
|
75
|
-
exports.isModernExpoFingerprintCLISupportedAsync = isModernExpoFingerprintCLISupportedAsync;
|
|
76
76
|
//# sourceMappingURL=expoFingerprintCli.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expoFingerprintCli.js","sourceRoot":"","sources":["../../src/utils/expoFingerprintCli.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"expoFingerprintCli.js","sourceRoot":"","sources":["../../src/utils/expoFingerprintCli.ts"],"names":[],"mappings":"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","sourcesContent":["import resolveFrom from 'resolve-from';\nimport spawnAsync from '@expo/turtle-spawn';\nimport { BuildStepEnv } from '@expo/steps';\nimport fs from 'fs-extra';\nimport semver from 'semver';\n\nexport class ExpoFingerprintCLIModuleNotFoundError extends Error {}\nexport class ExpoFingerprintCLIInvalidCommandError extends Error {}\nexport class ExpoFingerprintCLICommandFailedError extends Error {}\n\nfunction resolveExpoFingerprintCLI(projectRoot: string): string {\n const expoPackageRoot = resolveFrom.silent(projectRoot, 'expo/package.json');\n try {\n return (\n resolveFrom.silent(expoPackageRoot ?? projectRoot, '@expo/fingerprint/bin/cli') ??\n resolveFrom(expoPackageRoot ?? projectRoot, '@expo/fingerprint/bin/cli.js')\n );\n } catch (e: any) {\n if (e.code === 'MODULE_NOT_FOUND') {\n throw new ExpoFingerprintCLIModuleNotFoundError(\n `The \\`@expo/fingerprint\\` package was not found.`\n );\n }\n throw e;\n }\n}\n\nexport async function expoFingerprintCommandAsync(\n projectDir: string,\n args: string[],\n { env }: { env: BuildStepEnv }\n): Promise<string> {\n const expoFingerprintCli = resolveExpoFingerprintCLI(projectDir);\n try {\n const spawnResult = await spawnAsync(expoFingerprintCli, args, {\n stdio: 'pipe',\n cwd: projectDir,\n env,\n });\n return spawnResult.stdout;\n } catch (e: any) {\n if (e.stderr && typeof e.stderr === 'string') {\n if (e.stderr.includes('Invalid command')) {\n throw new ExpoFingerprintCLIInvalidCommandError(\n `The command specified by ${args} was not valid in the \\`@expo/fingerprint\\` CLI.`\n );\n } else {\n throw new ExpoFingerprintCLICommandFailedError(e.stderr);\n }\n }\n throw e;\n }\n}\n\nasync function getExpoFingerprintPackageVersionIfInstalledAsync(\n projectDir: string\n): Promise<string | null> {\n const expoPackageRoot = resolveFrom.silent(projectDir, 'expo/package.json');\n const maybePackageJson = resolveFrom.silent(\n expoPackageRoot ?? projectDir,\n '@expo/fingerprint/package.json'\n );\n if (!maybePackageJson) {\n return null;\n }\n const { version } = await fs.readJson(maybePackageJson);\n return version ?? null;\n}\n\nexport async function isModernExpoFingerprintCLISupportedAsync(\n projectDir: string\n): Promise<boolean> {\n const expoFingerprintPackageVersion =\n await getExpoFingerprintPackageVersionIfInstalledAsync(projectDir);\n if (!expoFingerprintPackageVersion) {\n return false;\n }\n\n if (expoFingerprintPackageVersion.includes('canary')) {\n return true;\n }\n\n return semver.gte(expoFingerprintPackageVersion, '0.11.2');\n}\n"]}
|
|
@@ -3,7 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.setRuntimeVersionNativelyAsync = setRuntimeVersionNativelyAsync;
|
|
7
|
+
exports.setChannelNativelyAsync = setChannelNativelyAsync;
|
|
8
|
+
exports.configureEASExpoUpdatesAsync = configureEASExpoUpdatesAsync;
|
|
9
|
+
exports.configureExpoUpdatesIfInstalledAsync = configureExpoUpdatesIfInstalledAsync;
|
|
10
|
+
exports.resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync = resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync;
|
|
11
|
+
exports.getChannelAsync = getChannelAsync;
|
|
12
|
+
exports.getRuntimeVersionAsync = getRuntimeVersionAsync;
|
|
13
|
+
exports.isEASUpdateConfigured = isEASUpdateConfigured;
|
|
14
|
+
exports.isModernExpoUpdatesCLIWithRuntimeVersionCommandSupported = isModernExpoUpdatesCLIWithRuntimeVersionCommandSupported;
|
|
7
15
|
const assert_1 = __importDefault(require("assert"));
|
|
8
16
|
const os_1 = __importDefault(require("os"));
|
|
9
17
|
const path_1 = __importDefault(require("path"));
|
|
@@ -32,7 +40,6 @@ async function setRuntimeVersionNativelyAsync(ctx, runtimeVersion) {
|
|
|
32
40
|
throw new Error(`Platform is not supported.`);
|
|
33
41
|
}
|
|
34
42
|
}
|
|
35
|
-
exports.setRuntimeVersionNativelyAsync = setRuntimeVersionNativelyAsync;
|
|
36
43
|
/**
|
|
37
44
|
* Used for when Expo Updates is pointed at an EAS server.
|
|
38
45
|
*/
|
|
@@ -57,11 +64,9 @@ async function setChannelNativelyAsync(ctx) {
|
|
|
57
64
|
throw new Error(`Platform is not supported.`);
|
|
58
65
|
}
|
|
59
66
|
}
|
|
60
|
-
exports.setChannelNativelyAsync = setChannelNativelyAsync;
|
|
61
67
|
async function configureEASExpoUpdatesAsync(ctx) {
|
|
62
68
|
await setChannelNativelyAsync(ctx);
|
|
63
69
|
}
|
|
64
|
-
exports.configureEASExpoUpdatesAsync = configureEASExpoUpdatesAsync;
|
|
65
70
|
async function configureExpoUpdatesIfInstalledAsync(ctx, resolvedRuntime) {
|
|
66
71
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
67
72
|
const expoUpdatesPackageVersion = await (0, getExpoUpdatesPackageVersionIfInstalledAsync_1.default)(ctx.getReactNativeProjectDirectory(), ctx.logger);
|
|
@@ -113,7 +118,6 @@ This would cause any updates published on the local machine to not be compatible
|
|
|
113
118
|
await setRuntimeVersionNativelyAsync(ctx, ctx.job.version.runtimeVersion);
|
|
114
119
|
}
|
|
115
120
|
}
|
|
116
|
-
exports.configureExpoUpdatesIfInstalledAsync = configureExpoUpdatesIfInstalledAsync;
|
|
117
121
|
async function resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync({ cwd, appConfig, platform, workflow, logger, env, }) {
|
|
118
122
|
const expoUpdatesPackageVersion = await (0, getExpoUpdatesPackageVersionIfInstalledAsync_1.default)(cwd, logger);
|
|
119
123
|
if (expoUpdatesPackageVersion === null) {
|
|
@@ -131,7 +135,6 @@ async function resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync({ cwd, appCo
|
|
|
131
135
|
logger.info(`Resolved runtime version: ${resolvedRuntimeVersion === null || resolvedRuntimeVersion === void 0 ? void 0 : resolvedRuntimeVersion.runtimeVersion}`);
|
|
132
136
|
return resolvedRuntimeVersion;
|
|
133
137
|
}
|
|
134
|
-
exports.resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync = resolveRuntimeVersionForExpoUpdatesIfConfiguredAsync;
|
|
135
138
|
async function getChannelAsync(ctx) {
|
|
136
139
|
switch (ctx.job.platform) {
|
|
137
140
|
case eas_build_job_1.Platform.ANDROID: {
|
|
@@ -144,7 +147,6 @@ async function getChannelAsync(ctx) {
|
|
|
144
147
|
throw new Error(`Platform is not supported.`);
|
|
145
148
|
}
|
|
146
149
|
}
|
|
147
|
-
exports.getChannelAsync = getChannelAsync;
|
|
148
150
|
async function getRuntimeVersionAsync(ctx) {
|
|
149
151
|
switch (ctx.job.platform) {
|
|
150
152
|
case eas_build_job_1.Platform.ANDROID: {
|
|
@@ -157,7 +159,6 @@ async function getRuntimeVersionAsync(ctx) {
|
|
|
157
159
|
throw new Error(`Platform is not supported.`);
|
|
158
160
|
}
|
|
159
161
|
}
|
|
160
|
-
exports.getRuntimeVersionAsync = getRuntimeVersionAsync;
|
|
161
162
|
function isEASUpdateConfigured(ctx) {
|
|
162
163
|
var _a;
|
|
163
164
|
const rawUrl = (_a = ctx.appConfig.updates) === null || _a === void 0 ? void 0 : _a.url;
|
|
@@ -174,7 +175,6 @@ function isEASUpdateConfigured(ctx) {
|
|
|
174
175
|
return false;
|
|
175
176
|
}
|
|
176
177
|
}
|
|
177
|
-
exports.isEASUpdateConfigured = isEASUpdateConfigured;
|
|
178
178
|
function isModernExpoUpdatesCLIWithRuntimeVersionCommandSupported(expoUpdatesPackageVersion) {
|
|
179
179
|
if (expoUpdatesPackageVersion.includes('canary')) {
|
|
180
180
|
return true;
|
|
@@ -182,7 +182,6 @@ function isModernExpoUpdatesCLIWithRuntimeVersionCommandSupported(expoUpdatesPac
|
|
|
182
182
|
// Anything SDK 51 or greater uses the expo-updates CLI
|
|
183
183
|
return semver_1.default.gte(expoUpdatesPackageVersion, '0.25.4');
|
|
184
184
|
}
|
|
185
|
-
exports.isModernExpoUpdatesCLIWithRuntimeVersionCommandSupported = isModernExpoUpdatesCLIWithRuntimeVersionCommandSupported;
|
|
186
185
|
async function logDiffFingerprints({ resolvedRuntime, ctx, }) {
|
|
187
186
|
var _a;
|
|
188
187
|
const { resolvedRuntimeVersion, resolvedFingerprintSources } = resolvedRuntime;
|