eas-cli-local-build-plugin 0.0.128 → 0.0.129
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.js +5 -1
- package/dist/android.js.map +1 -1
- package/dist/build.js +19 -7
- package/dist/build.js.map +1 -1
- package/dist/checkRuntime.js +8 -2
- package/dist/checkRuntime.js.map +1 -1
- package/dist/expoCli.d.ts +1 -1
- package/dist/expoCli.js +18 -7
- package/dist/expoCli.js.map +1 -1
- package/dist/ios.js +5 -1
- package/dist/ios.js.map +1 -1
- package/dist/parseInput.js +1 -1
- package/dist/parseInput.js.map +1 -1
- package/package.json +25 -25
- package/src/checkRuntime.ts +1 -1
- package/src/expoCli.ts +18 -9
package/dist/android.js
CHANGED
|
@@ -38,7 +38,11 @@ async function buildAndroidAsync(job, { workingdir, env: baseEnv, metadata }) {
|
|
|
38
38
|
var _a, _b;
|
|
39
39
|
const versionName = (_a = job.version) === null || _a === void 0 ? void 0 : _a.versionName;
|
|
40
40
|
const versionCode = (_b = job.version) === null || _b === void 0 ? void 0 : _b.versionCode;
|
|
41
|
-
const env =
|
|
41
|
+
const env = {
|
|
42
|
+
...baseEnv,
|
|
43
|
+
...(versionCode && { EAS_BUILD_ANDROID_VERSION_CODE: versionCode }),
|
|
44
|
+
...(versionName && { EAS_BUILD_ANDROID_VERSION_NAME: versionName }),
|
|
45
|
+
};
|
|
42
46
|
const ctx = new build_tools_1.BuildContext(job, {
|
|
43
47
|
workingdir,
|
|
44
48
|
logger: logger_1.default,
|
package/dist/android.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"android.js","sourceRoot":"","sources":["../src/android.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uDAA+D;AAC/D,mDAAoF;AACpF,uDAA+B;AAE/B,mDAA6C;AAE7C,2CAA+C;AAC/C,sDAA8B;AAC9B,uCAAyD;AAElD,KAAK,UAAU,iBAAiB,CACrC,GAAgB,EAChB,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAe;;IAEnD,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"android.js","sourceRoot":"","sources":["../src/android.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uDAA+D;AAC/D,mDAAoF;AACpF,uDAA+B;AAE/B,mDAA6C;AAE7C,2CAA+C;AAC/C,sDAA8B;AAC9B,uCAAyD;AAElD,KAAK,UAAU,iBAAiB,CACrC,GAAgB,EAChB,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAe;;IAEnD,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,GAAG,GAAQ;QACf,GAAG,OAAO;QACV,GAAG,CAAC,WAAW,IAAI,EAAE,8BAA8B,EAAE,WAAW,EAAE,CAAC;QACnE,GAAG,CAAC,WAAW,IAAI,EAAE,8BAA8B,EAAE,WAAW,EAAE,CAAC;KACpE,CAAC;IACF,MAAM,GAAG,GAAG,IAAI,0BAAY,CAAc,GAAG,EAAE;QAC7C,UAAU;QACV,MAAM,EAAN,gBAAM;QACN,SAAS,EAAT,kBAAS;QACT,uBAAuB,EAAE,sCAA4B;QACrD,eAAe,EAAE,KAAK,EAAE,IAAkB,EAAE,KAAe,EAAE,MAAe,EAAE,EAAE;YAC9E,IAAI,IAAI,KAAK,0BAAY,CAAC,mBAAmB,EAAE;gBAC7C,OAAO,IAAI,CAAC;aACb;iBAAM;gBACL,OAAO,MAAM,IAAA,4BAAgB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;aAC9C;QACH,CAAC;QACD,GAAG;QACH,QAAQ;QACR,eAAe,EAAE,gBAAM,CAAC,eAAe;KACxC,CAAC,CAAC;IAEH,MAAM,GAAG,CAAC,aAAa,CAAC,0BAAU,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;QACzD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAA,cAAI,EAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,sBAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AAC5C,CAAC;AAjCD,8CAiCC","sourcesContent":["import { bunyan } from '@expo/logger';\nimport { Android, BuildPhase, Env } from '@expo/eas-build-job';\nimport { Builders, BuildContext, ArtifactType, Artifacts } from '@expo/build-tools';\nimport omit from 'lodash/omit';\n\nimport logger, { logBuffer } from './logger';\nimport { BuildParams } from './types';\nimport { prepareArtifacts } from './artifacts';\nimport config from './config';\nimport { runGlobalExpoCliCommandAsync } from './expoCli';\n\nexport async function buildAndroidAsync(\n job: Android.Job,\n { workingdir, env: baseEnv, metadata }: BuildParams\n): Promise<Artifacts> {\n const versionName = job.version?.versionName;\n const versionCode = job.version?.versionCode;\n const env: Env = {\n ...baseEnv,\n ...(versionCode && { EAS_BUILD_ANDROID_VERSION_CODE: versionCode }),\n ...(versionName && { EAS_BUILD_ANDROID_VERSION_NAME: versionName }),\n };\n const ctx = new BuildContext<Android.Job>(job, {\n workingdir,\n logger,\n logBuffer,\n runGlobalExpoCliCommand: runGlobalExpoCliCommandAsync,\n uploadArtifacts: async (type: ArtifactType, paths: string[], logger?: bunyan) => {\n if (type !== ArtifactType.APPLICATION_ARCHIVE) {\n return null;\n } else {\n return await prepareArtifacts(paths, logger);\n }\n },\n env,\n metadata,\n skipNativeBuild: config.skipNativeBuild,\n });\n\n await ctx.runBuildPhase(BuildPhase.START_BUILD, async () => {\n ctx.logger.info({ job: omit(ctx.job, 'secrets') }, 'Starting build');\n });\n\n return await Builders.androidBuilder(ctx);\n}\n"]}
|
package/dist/build.js
CHANGED
|
@@ -25,13 +25,25 @@ async function buildAsync(job, metadata) {
|
|
|
25
25
|
}
|
|
26
26
|
// keep in sync with worker env vars
|
|
27
27
|
// https://github.com/expo/turtle-v2/blob/main/src/services/worker/src/env.ts
|
|
28
|
-
const unfilteredEnv =
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
28
|
+
const unfilteredEnv = {
|
|
29
|
+
...process.env,
|
|
30
|
+
...(_a = job.builderEnvironment) === null || _a === void 0 ? void 0 : _a.env,
|
|
31
|
+
EAS_BUILD: '1',
|
|
32
|
+
EAS_BUILD_RUNNER: 'local-build-plugin',
|
|
33
|
+
EAS_BUILD_PLATFORM: job.platform,
|
|
34
|
+
EAS_BUILD_WORKINGDIR: path_1.default.join(workingdir, 'build'),
|
|
35
|
+
EAS_BUILD_PROFILE: metadata.buildProfile,
|
|
36
|
+
EAS_BUILD_GIT_COMMIT_HASH: metadata.gitCommitHash,
|
|
37
|
+
EAS_BUILD_USERNAME: username,
|
|
38
|
+
...(job.platform === eas_build_job_1.Platform.ANDROID && {
|
|
39
|
+
EAS_BUILD_ANDROID_VERSION_CODE: (_b = job.version) === null || _b === void 0 ? void 0 : _b.versionCode,
|
|
40
|
+
EAS_BUILD_ANDROID_VERSION_NAME: (_c = job.version) === null || _c === void 0 ? void 0 : _c.versionName,
|
|
41
|
+
}),
|
|
42
|
+
...(job.platform === eas_build_job_1.Platform.IOS && {
|
|
43
|
+
EAS_BUILD_IOS_BUILD_NUMBER: (_d = job.version) === null || _d === void 0 ? void 0 : _d.buildNumber,
|
|
44
|
+
EAS_BUILD_IOS_APP_VERSION: (_e = job.version) === null || _e === void 0 ? void 0 : _e.appVersion,
|
|
45
|
+
}),
|
|
46
|
+
};
|
|
35
47
|
const env = (0, pickBy_1.default)(unfilteredEnv, (val) => !!val);
|
|
36
48
|
let artifacts;
|
|
37
49
|
switch (job.platform) {
|
package/dist/build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAExB,uDAA2F;AAC3F,2DAAmC;AACnC,wDAA0B;AAC1B,kDAA0B;AAC1B,mDAAoE;AACpE,4DAAoC;AAEpC,uCAA8C;AAC9C,sDAA8B;AAC9B,+BAAsC;AACtC,6CAAsD;AAE/C,KAAK,UAAU,UAAU,CAAC,GAAQ,EAAE,QAAkB;;IAC3D,MAAM,UAAU,GAAG,MAAM,IAAA,mCAAsB,GAAE,CAAC;IAElD,IAAI;QACF,IAAI,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,wBAAQ,CAAC,OAAO,EAAE;YAC9C,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;SACzB;QAED,oCAAoC;QACpC,6EAA6E;QAC7E,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\n\nimport { Job, Platform, ArchiveSourceType, Metadata, Workflow } from '@expo/eas-build-job';\nimport pickBy from 'lodash/pickBy';\nimport fs from 'fs-extra';\nimport chalk from 'chalk';\nimport { Artifacts, SkipNativeBuildError } from '@expo/build-tools';\nimport nullthrows from 'nullthrows';\n\nimport { buildAndroidAsync } from './android';\nimport config from './config';\nimport { buildIosAsync } from './ios';\nimport { prepareWorkingdirAsync } from './workingdir';\n\nexport async function buildAsync(job: Job, metadata: Metadata): Promise<void> {\n const workingdir = await prepareWorkingdirAsync();\n\n try {\n let username = metadata.username;\n if (!username && job.type === Workflow.MANAGED) {\n username = job.username;\n }\n\n // keep in sync with worker env vars\n // https://github.com/expo/turtle-v2/blob/main/src/services/worker/src/env.ts\n const unfilteredEnv: Record<string, string | undefined> = {\n ...process.env,\n ...job.builderEnvironment?.env,\n EAS_BUILD: '1',\n EAS_BUILD_RUNNER: 'local-build-plugin',\n EAS_BUILD_PLATFORM: job.platform,\n EAS_BUILD_WORKINGDIR: path.join(workingdir, 'build'),\n EAS_BUILD_PROFILE: metadata.buildProfile,\n EAS_BUILD_GIT_COMMIT_HASH: metadata.gitCommitHash,\n EAS_BUILD_USERNAME: username,\n ...(job.platform === Platform.ANDROID && {\n EAS_BUILD_ANDROID_VERSION_CODE: job.version?.versionCode,\n EAS_BUILD_ANDROID_VERSION_NAME: job.version?.versionName,\n }),\n ...(job.platform === Platform.IOS && {\n EAS_BUILD_IOS_BUILD_NUMBER: job.version?.buildNumber,\n EAS_BUILD_IOS_APP_VERSION: job.version?.appVersion,\n }),\n };\n const env = pickBy(unfilteredEnv, (val?: string): val is string => !!val);\n\n let artifacts: Artifacts | undefined;\n switch (job.platform) {\n case Platform.ANDROID: {\n artifacts = await buildAndroidAsync(job, { env, workingdir, metadata });\n break;\n }\n case Platform.IOS: {\n artifacts = await buildIosAsync(job, { env, workingdir, metadata });\n break;\n }\n }\n if (!config.skipNativeBuild) {\n console.log();\n console.log(chalk.green('Build successful'));\n console.log(\n chalk.green(\n `You can find the build artifacts in ${nullthrows(artifacts.APPLICATION_ARCHIVE)}`\n )\n );\n }\n } catch (e: any) {\n if (e instanceof SkipNativeBuildError) {\n console.log(e.message);\n return;\n }\n console.error();\n console.error(chalk.red(`Build failed`));\n if (config.logger.level === 'debug') {\n console.error(e.innerError);\n }\n throw e;\n } finally {\n if (!config.skipCleanup) {\n await fs.remove(workingdir);\n } else {\n console.error(chalk.yellow(`Skipping cleanup, ${workingdir} won't be removed.`));\n }\n if (job.projectArchive.type === ArchiveSourceType.PATH) {\n await fs.remove(job.projectArchive.path);\n }\n }\n}\n"]}
|
package/dist/checkRuntime.js
CHANGED
|
@@ -61,7 +61,7 @@ const validators = [
|
|
|
61
61
|
warn('Yarn version in your eas.json does not match the yarn currently installed in your system');
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
|
-
catch
|
|
64
|
+
catch {
|
|
65
65
|
warn("Yarn is not available, make sure it's installed and in your PATH");
|
|
66
66
|
}
|
|
67
67
|
},
|
|
@@ -84,7 +84,13 @@ const validators = [
|
|
|
84
84
|
try {
|
|
85
85
|
await (0, spawn_async_1.default)('fastlane', ['--version'], {
|
|
86
86
|
stdio: 'pipe',
|
|
87
|
-
env:
|
|
87
|
+
env: {
|
|
88
|
+
...process.env,
|
|
89
|
+
FASTLANE_DISABLE_COLORS: '1',
|
|
90
|
+
FASTLANE_SKIP_UPDATE_CHECK: '1',
|
|
91
|
+
SKIP_SLOW_FASTLANE_WARNING: 'true',
|
|
92
|
+
FASTLANE_HIDE_TIMESTAMP: 'true',
|
|
93
|
+
},
|
|
88
94
|
});
|
|
89
95
|
}
|
|
90
96
|
catch (err) {
|
package/dist/checkRuntime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkRuntime.js","sourceRoot":"","sources":["../src/checkRuntime.ts"],"names":[],"mappings":";;;;;;AAAA,uDAAoD;AACpD,kDAA0B;AAC1B,oEAA2C;AAC3C,wDAA0B;AAO1B,SAAS,IAAI,CAAC,GAAW;IACvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,KAAK,CAAC,GAAW;IACxB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,GAAgB;IAC9B;QACE,KAAK,CAAC,UAAU,CAAC,GAAQ;YACvB,IAAI,GAAG,CAAC,QAAQ,KAAK,wBAAQ,CAAC,GAAG,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE;gBAClE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;aACzD;iBAAM,IACL,GAAG,CAAC,QAAQ,KAAK,wBAAQ,CAAC,OAAO;gBACjC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,EAC/C;gBACA,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;aACzE;QACH,CAAC;KACF;IACD;QACE,KAAK,CAAC,UAAU,CAAC,GAAQ;;YACvB,IAAI;gBACF,MAAM,OAAO,GAAG,CAAC,MAAM,IAAA,qBAAU,EAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3F,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC9E,MAAM,cAAc,GAAG,MAAA,GAAG,CAAC,kBAAkB,0CAAE,IAAI,CAAC;gBACpD,IAAI,cAAc,EAAE;oBAClB,MAAM,uBAAuB,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC;wBAC5D,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;wBACzB,CAAC,CAAC,cAAc,CAAC;oBACnB,IAAI,gBAAgB,KAAK,uBAAuB,EAAE;wBAChD,IAAI,CACF,gGAAgG,CACjG,CAAC;qBACH;iBACF;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,KAAK,CAAC,qEAAqE,CAAC,CAAC;gBAC7E,MAAM,GAAG,CAAC;aACX;QACH,CAAC;KACF;IACD;QACE,KAAK,CAAC,UAAU,CAAC,GAAQ;;YACvB,MAAM,cAAc,GAAG,MAAA,GAAG,CAAC,kBAAkB,0CAAE,IAAI,CAAC;YACpD,IAAI,CAAC,cAAc,EAAE;gBACnB,OAAO;aACR;YACD,IAAI;gBACF,MAAM,OAAO,GAAG,CAAC,MAAM,IAAA,qBAAU,EAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3F,IAAI,cAAc,KAAK,OAAO,EAAE;oBAC9B,IAAI,CACF,0FAA0F,CAC3F,CAAC;iBACH;aACF;YAAC,
|
|
1
|
+
{"version":3,"file":"checkRuntime.js","sourceRoot":"","sources":["../src/checkRuntime.ts"],"names":[],"mappings":"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","sourcesContent":["import { Job, Platform } from '@expo/eas-build-job';\nimport chalk from 'chalk';\nimport spawnAsync from '@expo/spawn-async';\nimport fs from 'fs-extra';\n\ninterface Validator {\n platform?: Platform;\n checkAsync: (job: Job) => Promise<void>;\n}\n\nfunction warn(msg: string): void {\n console.log(chalk.yellow(msg));\n}\n\nfunction error(msg: string): void {\n console.error(chalk.red(msg));\n}\n\nconst validators: Validator[] = [\n {\n async checkAsync(job: Job) {\n if (job.platform === Platform.IOS && process.platform !== 'darwin') {\n throw new Error('iOS builds can only be run on macOS.');\n } else if (\n job.platform === Platform.ANDROID &&\n !['linux', 'darwin'].includes(process.platform)\n ) {\n throw new Error('Android builds are supported only on Linux and macOS');\n }\n },\n },\n {\n async checkAsync(job: Job) {\n try {\n const version = (await spawnAsync('node', ['--version'], { stdio: 'pipe' })).stdout.trim();\n const sanitizedVersion = version.startsWith('v') ? version.slice(1) : version;\n const versionFromJob = job.builderEnvironment?.node;\n if (versionFromJob) {\n const sanitizedVersionFromJob = versionFromJob.startsWith('v')\n ? versionFromJob.slice(1)\n : versionFromJob;\n if (sanitizedVersion !== sanitizedVersionFromJob) {\n warn(\n 'Node.js version in your eas.json does not match the Node.js currently installed in your system'\n );\n }\n }\n } catch (err) {\n error(\"Node.js is not available, make sure it's installed and in your PATH\");\n throw err;\n }\n },\n },\n {\n async checkAsync(job: Job) {\n const versionFromJob = job.builderEnvironment?.yarn;\n if (!versionFromJob) {\n return;\n }\n try {\n const version = (await spawnAsync('yarn', ['--version'], { stdio: 'pipe' })).stdout.trim();\n if (versionFromJob !== version) {\n warn(\n 'Yarn version in your eas.json does not match the yarn currently installed in your system'\n );\n }\n } catch {\n warn(\"Yarn is not available, make sure it's installed and in your PATH\");\n }\n },\n },\n {\n platform: Platform.ANDROID,\n async checkAsync(_) {\n if (!process.env.ANDROID_NDK_HOME) {\n warn(\n 'ANDROID_NDK_HOME environment variable was not specified, continuing build without NDK'\n );\n return;\n }\n if (!(await fs.pathExists(process.env.ANDROID_NDK_HOME))) {\n throw new Error(`NDK was not found under ${process.env.ANDROID_NDK_HOME}`);\n }\n },\n },\n {\n platform: Platform.IOS,\n async checkAsync() {\n try {\n await spawnAsync('fastlane', ['--version'], {\n stdio: 'pipe',\n env: {\n ...process.env,\n FASTLANE_DISABLE_COLORS: '1',\n FASTLANE_SKIP_UPDATE_CHECK: '1',\n SKIP_SLOW_FASTLANE_WARNING: 'true',\n FASTLANE_HIDE_TIMESTAMP: 'true',\n },\n });\n } catch (err) {\n error(\"Fastlane is not available, make sure it's installed and in your PATH\");\n throw err;\n }\n },\n },\n {\n platform: Platform.IOS,\n async checkAsync(job: Job) {\n try {\n const version = (await spawnAsync('pod', ['--version'], { stdio: 'pipe' })).stdout.trim();\n const versionFromJob = job.platform === Platform.IOS && job.builderEnvironment?.cocoapods;\n if (versionFromJob && versionFromJob !== version) {\n warn(\n 'Cocoapods version in your eas.json does not match the version currently installed in your system'\n );\n }\n } catch (err) {\n error(\"Cocoapods is not available, make sure it's installed and in your PATH\");\n throw err;\n }\n },\n },\n];\n\nexport async function checkRuntimeAsync(job: Job): Promise<void> {\n for (const validator of validators) {\n if (validator.platform === job.platform || !validator.platform) {\n await validator.checkAsync(job);\n }\n }\n}\n"]}
|
package/dist/expoCli.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { SpawnOptions, SpawnPromise, SpawnResult } from '@expo/turtle-spawn';
|
|
2
|
-
export declare function runGlobalExpoCliCommandAsync(
|
|
2
|
+
export declare function runGlobalExpoCliCommandAsync(expoCliArgs: string[], options: SpawnOptions, npmVersionAtLeast7: boolean): SpawnPromise<SpawnResult>;
|
package/dist/expoCli.js
CHANGED
|
@@ -4,14 +4,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.runGlobalExpoCliCommandAsync = void 0;
|
|
7
|
-
const path_1 = __importDefault(require("path"));
|
|
8
7
|
const turtle_spawn_1 = __importDefault(require("@expo/turtle-spawn"));
|
|
9
|
-
const
|
|
10
|
-
function runGlobalExpoCliCommandAsync(
|
|
11
|
-
var _a
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
const EXPO_CLI_VERSION = '6.0.5';
|
|
9
|
+
function runGlobalExpoCliCommandAsync(expoCliArgs, options, npmVersionAtLeast7) {
|
|
10
|
+
var _a;
|
|
11
|
+
if (process.env.EXPO_CLI_PATH) {
|
|
12
|
+
const expoCliBinPath = process.env.EXPO_CLI_PATH;
|
|
13
|
+
const expoCliCommandWithArgs = expoCliArgs.join(' ');
|
|
14
|
+
(_a = options === null || options === void 0 ? void 0 : options.logger) === null || _a === void 0 ? void 0 : _a.debug(`${expoCliBinPath} ${expoCliCommandWithArgs}`);
|
|
15
|
+
return (0, turtle_spawn_1.default)('bash', ['-c', `${expoCliBinPath} ${expoCliCommandWithArgs}`], options);
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
const args = [`expo-cli@${EXPO_CLI_VERSION}`, ...expoCliArgs];
|
|
19
|
+
if (npmVersionAtLeast7) {
|
|
20
|
+
// npx shipped with npm >= 7.0.0 requires the "-y" flag to run commands without
|
|
21
|
+
// prompting the user to install a package that is used for the first time
|
|
22
|
+
args.unshift('-y');
|
|
23
|
+
}
|
|
24
|
+
return (0, turtle_spawn_1.default)('npx', args, options);
|
|
25
|
+
}
|
|
15
26
|
}
|
|
16
27
|
exports.runGlobalExpoCliCommandAsync = runGlobalExpoCliCommandAsync;
|
|
17
28
|
//# sourceMappingURL=expoCli.js.map
|
package/dist/expoCli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expoCli.js","sourceRoot":"","sources":["../src/expoCli.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"expoCli.js","sourceRoot":"","sources":["../src/expoCli.ts"],"names":[],"mappings":";;;;;;AAAA,sEAAyF;AAEzF,MAAM,gBAAgB,GAAG,OAAO,CAAC;AAEjC,SAAgB,4BAA4B,CAC1C,WAAqB,EACrB,OAAqB,EACrB,kBAA2B;;IAE3B,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE;QAC7B,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QACjD,MAAM,sBAAsB,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,0CAAE,KAAK,CAAC,GAAG,cAAc,IAAI,sBAAsB,EAAE,CAAC,CAAC;QACtE,OAAO,IAAA,sBAAU,EAAC,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,cAAc,IAAI,sBAAsB,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;KAC3F;SAAM;QACL,MAAM,IAAI,GAAG,CAAC,YAAY,gBAAgB,EAAE,EAAE,GAAG,WAAW,CAAC,CAAC;QAC9D,IAAI,kBAAkB,EAAE;YACtB,+EAA+E;YAC/E,0EAA0E;YAC1E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACpB;QACD,OAAO,IAAA,sBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;KACzC;AACH,CAAC;AAnBD,oEAmBC","sourcesContent":["import spawnAsync, { SpawnOptions, SpawnPromise, SpawnResult } from '@expo/turtle-spawn';\n\nconst EXPO_CLI_VERSION = '6.0.5';\n\nexport function runGlobalExpoCliCommandAsync(\n expoCliArgs: string[],\n options: SpawnOptions,\n npmVersionAtLeast7: boolean\n): SpawnPromise<SpawnResult> {\n if (process.env.EXPO_CLI_PATH) {\n const expoCliBinPath = process.env.EXPO_CLI_PATH;\n const expoCliCommandWithArgs = expoCliArgs.join(' ');\n options?.logger?.debug(`${expoCliBinPath} ${expoCliCommandWithArgs}`);\n return spawnAsync('bash', ['-c', `${expoCliBinPath} ${expoCliCommandWithArgs}`], options);\n } else {\n const args = [`expo-cli@${EXPO_CLI_VERSION}`, ...expoCliArgs];\n if (npmVersionAtLeast7) {\n // npx shipped with npm >= 7.0.0 requires the \"-y\" flag to run commands without\n // prompting the user to install a package that is used for the first time\n args.unshift('-y');\n }\n return spawnAsync('npx', args, options);\n }\n}\n"]}
|
package/dist/ios.js
CHANGED
|
@@ -38,7 +38,11 @@ async function buildIosAsync(job, { workingdir, env: baseEnv, metadata }) {
|
|
|
38
38
|
var _a, _b;
|
|
39
39
|
const buildNumber = (_a = job.version) === null || _a === void 0 ? void 0 : _a.buildNumber;
|
|
40
40
|
const appVersion = (_b = job.version) === null || _b === void 0 ? void 0 : _b.appVersion;
|
|
41
|
-
const env =
|
|
41
|
+
const env = {
|
|
42
|
+
...baseEnv,
|
|
43
|
+
...(buildNumber && { EAS_BUILD_IOS_BUILD_NUMBER: buildNumber }),
|
|
44
|
+
...(appVersion && { EAS_BUILD_IOS_APP_VERSION: appVersion }),
|
|
45
|
+
};
|
|
42
46
|
const ctx = new build_tools_1.BuildContext(job, {
|
|
43
47
|
workingdir,
|
|
44
48
|
logger: logger_1.default,
|
package/dist/ios.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ios.js","sourceRoot":"","sources":["../src/ios.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAA2D;AAC3D,mDAAoF;AAEpF,uDAA+B;AAE/B,uCAAyD;AACzD,mDAA6C;AAE7C,2CAA+C;AAC/C,sDAA8B;AAEvB,KAAK,UAAU,aAAa,CACjC,GAAY,EACZ,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAe;;IAEnD,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,UAAU,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,UAAU,CAAC;IAC3C,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"ios.js","sourceRoot":"","sources":["../src/ios.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAA2D;AAC3D,mDAAoF;AAEpF,uDAA+B;AAE/B,uCAAyD;AACzD,mDAA6C;AAE7C,2CAA+C;AAC/C,sDAA8B;AAEvB,KAAK,UAAU,aAAa,CACjC,GAAY,EACZ,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAe;;IAEnD,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,UAAU,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,UAAU,CAAC;IAC3C,MAAM,GAAG,GAAQ;QACf,GAAG,OAAO;QACV,GAAG,CAAC,WAAW,IAAI,EAAE,0BAA0B,EAAE,WAAW,EAAE,CAAC;QAC/D,GAAG,CAAC,UAAU,IAAI,EAAE,yBAAyB,EAAE,UAAU,EAAE,CAAC;KAC7D,CAAC;IACF,MAAM,GAAG,GAAG,IAAI,0BAAY,CAAU,GAAG,EAAE;QACzC,UAAU;QACV,MAAM,EAAN,gBAAM;QACN,SAAS,EAAT,kBAAS;QACT,uBAAuB,EAAE,sCAA4B;QACrD,eAAe,EAAE,KAAK,EAAE,IAAkB,EAAE,KAAe,EAAE,MAAe,EAAE,EAAE;YAC9E,IAAI,IAAI,KAAK,0BAAY,CAAC,mBAAmB,EAAE;gBAC7C,OAAO,IAAI,CAAC;aACb;iBAAM;gBACL,OAAO,MAAM,IAAA,4BAAgB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;aAC9C;QACH,CAAC;QACD,GAAG;QACH,QAAQ;QACR,eAAe,EAAE,gBAAM,CAAC,eAAe;KACxC,CAAC,CAAC;IAEH,MAAM,GAAG,CAAC,aAAa,CAAC,0BAAU,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;QACzD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAA,cAAI,EAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,sBAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACxC,CAAC;AAjCD,sCAiCC","sourcesContent":["import { Ios, BuildPhase, Env } from '@expo/eas-build-job';\nimport { Builders, BuildContext, ArtifactType, Artifacts } from '@expo/build-tools';\nimport { bunyan } from '@expo/logger';\nimport omit from 'lodash/omit';\n\nimport { runGlobalExpoCliCommandAsync } from './expoCli';\nimport logger, { logBuffer } from './logger';\nimport { BuildParams } from './types';\nimport { prepareArtifacts } from './artifacts';\nimport config from './config';\n\nexport async function buildIosAsync(\n job: Ios.Job,\n { workingdir, env: baseEnv, metadata }: BuildParams\n): Promise<Artifacts> {\n const buildNumber = job.version?.buildNumber;\n const appVersion = job.version?.appVersion;\n const env: Env = {\n ...baseEnv,\n ...(buildNumber && { EAS_BUILD_IOS_BUILD_NUMBER: buildNumber }),\n ...(appVersion && { EAS_BUILD_IOS_APP_VERSION: appVersion }),\n };\n const ctx = new BuildContext<Ios.Job>(job, {\n workingdir,\n logger,\n logBuffer,\n runGlobalExpoCliCommand: runGlobalExpoCliCommandAsync,\n uploadArtifacts: async (type: ArtifactType, paths: string[], logger?: bunyan) => {\n if (type !== ArtifactType.APPLICATION_ARCHIVE) {\n return null;\n } else {\n return await prepareArtifacts(paths, logger);\n }\n },\n env,\n metadata,\n skipNativeBuild: config.skipNativeBuild,\n });\n\n await ctx.runBuildPhase(BuildPhase.START_BUILD, async () => {\n ctx.logger.info({ job: omit(ctx.job, 'secrets') }, 'Starting build');\n });\n\n return await Builders.iosBuilder(ctx);\n}\n"]}
|
package/dist/parseInput.js
CHANGED
|
@@ -53,7 +53,7 @@ function validateParams(params) {
|
|
|
53
53
|
try {
|
|
54
54
|
const job = (0, eas_build_job_1.sanitizeJob)(value.job);
|
|
55
55
|
const metadata = (0, eas_build_job_1.sanitizeMetadata)(value.metadata);
|
|
56
|
-
return
|
|
56
|
+
return { ...value, job, metadata };
|
|
57
57
|
}
|
|
58
58
|
catch (err) {
|
|
59
59
|
console.log(`Currently using ${packageJson.name}@${packageJson.version}.`);
|
package/dist/parseInput.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseInput.js","sourceRoot":"","sources":["../src/parseInput.ts"],"names":[],"mappings":";;;;;;AAAA,uDAM6B;AAC7B,8CAAsB;AACtB,kDAA0B;AAC1B,wDAA0B;AAE1B,iCAAyC;AAEzC,MAAM,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAO/C,MAAM,YAAY,GAAG,aAAG,CAAC,MAAM,CAAS;IACtC,GAAG,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;IAC3B,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;CACjC,CAAC,CAAC;AAEI,KAAK,UAAU,eAAe;IACnC,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;QAC/E,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAEjC,IAAI,CAAC,QAAQ,EAAE;QACb,WAAW,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IACD,IAAI,YAAY,CAAC;IACjB,IAAI;QACF,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;KAC7E;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,CAAC,KAAK,CAAC,GAAG,eAAK,CAAC,GAAG,CAAC,4DAA4D,CAAC,EAAE,CAAC,CAAC;QAC5F,MAAM,GAAG,CAAC;KACX;IACD,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IAC5C,IAAA,sBAAe,EAAC,KAAK,IAAI,EAAE;QACzB,IAAI,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,KAAK,iCAAiB,CAAC,IAAI,EAAE;YAC7D,MAAM,kBAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;SACjD;IACH,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAzBD,0CAyBC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE;QACrD,YAAY,EAAE,IAAI;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC;IACH,IAAI,KAAK,EAAE;QACT,MAAM,KAAK,CAAC;KACb;IACD,IAAI;QACF,MAAM,GAAG,GAAG,IAAA,2BAAW,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAA,gCAAgB,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClD,
|
|
1
|
+
{"version":3,"file":"parseInput.js","sourceRoot":"","sources":["../src/parseInput.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Job,\n sanitizeJob,\n ArchiveSourceType,\n Metadata,\n sanitizeMetadata,\n} from '@expo/eas-build-job';\nimport Joi from 'joi';\nimport chalk from 'chalk';\nimport fs from 'fs-extra';\n\nimport { registerHandler } from './exit';\n\nconst packageJson = require('../package.json');\n\ninterface Params {\n job: Job;\n metadata: Metadata;\n}\n\nconst ParamsSchema = Joi.object<Params>({\n job: Joi.object().unknown(),\n metadata: Joi.object().unknown(),\n});\n\nexport async function parseInputAsync(): Promise<Params> {\n if (process.argv.findIndex((arg) => arg === '--version' || arg === '-v') !== -1) {\n console.log(packageJson.version);\n process.exit(0);\n }\n const rawInput = process.argv[2];\n\n if (!rawInput) {\n displayHelp();\n process.exit(1);\n }\n let parsedParams;\n try {\n parsedParams = JSON.parse(Buffer.from(rawInput, 'base64').toString('utf8'));\n } catch (err) {\n console.error(`${chalk.red('The input passed as a argument is not base64 encoded json.')}`);\n throw err;\n }\n const params = validateParams(parsedParams);\n registerHandler(async () => {\n if (params.job.projectArchive.type === ArchiveSourceType.PATH) {\n await fs.remove(params.job.projectArchive.path);\n }\n });\n return params;\n}\n\nfunction validateParams(params: object): Params {\n const { value, error } = ParamsSchema.validate(params, {\n stripUnknown: true,\n convert: true,\n abortEarly: false,\n });\n if (error) {\n throw error;\n }\n try {\n const job = sanitizeJob(value.job);\n const metadata = sanitizeMetadata(value.metadata);\n return { ...value, job, metadata };\n } catch (err) {\n console.log(`Currently using ${packageJson.name}@${packageJson.version}.`);\n console.error(\n chalk.red(\n `Job object has incorrect format, update to latest versions of ${chalk.bold(\n 'eas-cli'\n )} and ${chalk.bold(packageJson.name)} to make sure you are using compatible packages.`\n )\n );\n throw err;\n }\n}\n\nfunction displayHelp(): void {\n console.log(\n `This tool is not intended for standalone use, it will be used internally by ${chalk.bold(\n 'eas-cli'\n )} when building with flag ${chalk.bold('--local')}.`\n );\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eas-cli-local-build-plugin",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.129",
|
|
4
4
|
"description": "Tool for running EAS compatible builds on a local machine.",
|
|
5
5
|
"main": "dist/main.js",
|
|
6
6
|
"bin": {
|
|
@@ -10,7 +10,8 @@
|
|
|
10
10
|
"start": "yarn watch",
|
|
11
11
|
"watch": "tsc --watch --preserveWatchOutput",
|
|
12
12
|
"build": "tsc",
|
|
13
|
-
"prepack": "rm -rf dist && tsc -p tsconfig.build.json"
|
|
13
|
+
"prepack": "rm -rf dist && tsc -p tsconfig.build.json",
|
|
14
|
+
"clean": "rm -rf node_modules dist coverage"
|
|
14
15
|
},
|
|
15
16
|
"engines": {
|
|
16
17
|
"node": ">=12.9.0"
|
|
@@ -19,35 +20,34 @@
|
|
|
19
20
|
"bugs": "https://github.com/expo/eas-build/issues",
|
|
20
21
|
"license": "BUSL-1.1",
|
|
21
22
|
"dependencies": {
|
|
22
|
-
"@expo/build-tools": "0.1.
|
|
23
|
+
"@expo/build-tools": "0.1.172",
|
|
23
24
|
"@expo/bunyan": "^4.0.0",
|
|
24
|
-
"@expo/eas-build-job": "0.2.
|
|
25
|
-
"@expo/spawn-async": "^1.
|
|
26
|
-
"@expo/turtle-spawn": "0.0.
|
|
27
|
-
"chalk": "^
|
|
28
|
-
"env-paths": "
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"joi": "^17.4.2",
|
|
25
|
+
"@expo/eas-build-job": "0.2.104",
|
|
26
|
+
"@expo/spawn-async": "^1.7.0",
|
|
27
|
+
"@expo/turtle-spawn": "0.0.27",
|
|
28
|
+
"chalk": "^5.2.0",
|
|
29
|
+
"env-paths": "^3.0.0",
|
|
30
|
+
"fs-extra": "^11.1.0",
|
|
31
|
+
"joi": "^17.7.0",
|
|
32
32
|
"lodash": "^4.17.21",
|
|
33
33
|
"nullthrows": "^1.1.1",
|
|
34
|
-
"semver": "^7.3.
|
|
35
|
-
"tar": "^6.1.
|
|
36
|
-
"uuid": "^
|
|
34
|
+
"semver": "^7.3.8",
|
|
35
|
+
"tar": "^6.1.13",
|
|
36
|
+
"uuid": "^9.0.0"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@types/fs-extra": "^
|
|
40
|
-
"@types/hapi__joi": "^17.1.
|
|
41
|
-
"@types/lodash": "^4.14.
|
|
42
|
-
"@types/semver": "^7.3.
|
|
43
|
-
"@types/tar": "^
|
|
44
|
-
"@types/uuid": "^
|
|
45
|
-
"jest": "^
|
|
46
|
-
"ts-jest": "^
|
|
47
|
-
"typescript": "^4.
|
|
39
|
+
"@types/fs-extra": "^11.0.1",
|
|
40
|
+
"@types/hapi__joi": "^17.1.9",
|
|
41
|
+
"@types/lodash": "^4.14.191",
|
|
42
|
+
"@types/semver": "^7.3.13",
|
|
43
|
+
"@types/tar": "^6.1.3",
|
|
44
|
+
"@types/uuid": "^9.0.0",
|
|
45
|
+
"jest": "^29.4.0",
|
|
46
|
+
"ts-jest": "^29.0.5",
|
|
47
|
+
"typescript": "^4.9.4"
|
|
48
48
|
},
|
|
49
49
|
"volta": {
|
|
50
|
-
"node": "
|
|
51
|
-
"yarn": "1.22.
|
|
50
|
+
"node": "18.13.0",
|
|
51
|
+
"yarn": "1.22.19"
|
|
52
52
|
}
|
|
53
53
|
}
|
package/src/checkRuntime.ts
CHANGED
package/src/expoCli.ts
CHANGED
|
@@ -1,15 +1,24 @@
|
|
|
1
|
-
import path from 'path';
|
|
2
|
-
|
|
3
1
|
import spawnAsync, { SpawnOptions, SpawnPromise, SpawnResult } from '@expo/turtle-spawn';
|
|
4
2
|
|
|
5
|
-
const
|
|
3
|
+
const EXPO_CLI_VERSION = '6.0.5';
|
|
6
4
|
|
|
7
5
|
export function runGlobalExpoCliCommandAsync(
|
|
8
|
-
|
|
9
|
-
options: SpawnOptions
|
|
6
|
+
expoCliArgs: string[],
|
|
7
|
+
options: SpawnOptions,
|
|
8
|
+
npmVersionAtLeast7: boolean
|
|
10
9
|
): SpawnPromise<SpawnResult> {
|
|
11
|
-
|
|
12
|
-
process.env.EXPO_CLI_PATH
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
if (process.env.EXPO_CLI_PATH) {
|
|
11
|
+
const expoCliBinPath = process.env.EXPO_CLI_PATH;
|
|
12
|
+
const expoCliCommandWithArgs = expoCliArgs.join(' ');
|
|
13
|
+
options?.logger?.debug(`${expoCliBinPath} ${expoCliCommandWithArgs}`);
|
|
14
|
+
return spawnAsync('bash', ['-c', `${expoCliBinPath} ${expoCliCommandWithArgs}`], options);
|
|
15
|
+
} else {
|
|
16
|
+
const args = [`expo-cli@${EXPO_CLI_VERSION}`, ...expoCliArgs];
|
|
17
|
+
if (npmVersionAtLeast7) {
|
|
18
|
+
// npx shipped with npm >= 7.0.0 requires the "-y" flag to run commands without
|
|
19
|
+
// prompting the user to install a package that is used for the first time
|
|
20
|
+
args.unshift('-y');
|
|
21
|
+
}
|
|
22
|
+
return spawnAsync('npx', args, options);
|
|
23
|
+
}
|
|
15
24
|
}
|