@expo/build-tools 0.1.85 → 0.1.89
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/utils/npmrc.d.ts +3 -0
- package/dist/utils/npmrc.js +24 -0
- package/dist/utils/npmrc.js.map +1 -0
- package/dist/utils/project.js +5 -1
- package/dist/utils/project.js.map +1 -1
- package/package.json +6 -6
- package/templates/npmrc +2 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createNpmrcIfNotExistsAsync = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
9
|
+
const NPMRC_TEMPLATE_PATH = path_1.default.join(__dirname, '../../templates/npmrc');
|
|
10
|
+
async function createNpmrcIfNotExistsAsync(ctx) {
|
|
11
|
+
ctx.logger.info('We detected that you set the NPM_TOKEN environment variable');
|
|
12
|
+
const projectNpmrcPath = path_1.default.join(ctx.buildDirectory, '.npmrc');
|
|
13
|
+
if (await fs_extra_1.default.pathExists(projectNpmrcPath)) {
|
|
14
|
+
ctx.logger.info('.npmrc already exists in your project directory, skipping generation');
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
const npmrcContents = await fs_extra_1.default.readFile(NPMRC_TEMPLATE_PATH, 'utf8');
|
|
18
|
+
ctx.logger.info('Creating .npmrc in your project directory with the following contents:');
|
|
19
|
+
ctx.logger.info(npmrcContents);
|
|
20
|
+
await fs_extra_1.default.copy(NPMRC_TEMPLATE_PATH, projectNpmrcPath);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.createNpmrcIfNotExistsAsync = createNpmrcIfNotExistsAsync;
|
|
24
|
+
//# sourceMappingURL=npmrc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"npmrc.js","sourceRoot":"","sources":["../../src/utils/npmrc.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAGxB,wDAA0B;AAI1B,MAAM,mBAAmB,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;AAEnE,KAAK,UAAU,2BAA2B,CAAC,GAAsB;IACtE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;IAC/E,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACjE,IAAI,MAAM,kBAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;QACzC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;KACzF;SAAM;QACL,MAAM,aAAa,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;QACrE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;QAC1F,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/B,MAAM,kBAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,CAAC;KACtD;AACH,CAAC;AAXD,kEAWC","sourcesContent":["import path from 'path';\n\nimport { Job } from '@expo/eas-build-job';\nimport fs from 'fs-extra';\n\nimport { BuildContext } from '../context';\n\nconst NPMRC_TEMPLATE_PATH = path.join(__dirname, '../../templates/npmrc');\n\nexport async function createNpmrcIfNotExistsAsync(ctx: BuildContext<Job>): Promise<void> {\n ctx.logger.info('We detected that you set the NPM_TOKEN environment variable');\n const projectNpmrcPath = path.join(ctx.buildDirectory, '.npmrc');\n if (await fs.pathExists(projectNpmrcPath)) {\n ctx.logger.info('.npmrc already exists in your project directory, skipping generation');\n } else {\n const npmrcContents = await fs.readFile(NPMRC_TEMPLATE_PATH, 'utf8');\n ctx.logger.info('Creating .npmrc in your project directory with the following contents:');\n ctx.logger.info(npmrcContents);\n await fs.copy(NPMRC_TEMPLATE_PATH, projectNpmrcPath);\n }\n}\n"]}
|
package/dist/utils/project.js
CHANGED
|
@@ -10,10 +10,14 @@ const eas_build_job_1 = require("@expo/eas-build-job");
|
|
|
10
10
|
const turtle_spawn_1 = __importDefault(require("@expo/turtle-spawn"));
|
|
11
11
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
12
12
|
const hooks_1 = require("./hooks");
|
|
13
|
+
const npmrc_1 = require("./npmrc");
|
|
13
14
|
const packageManager_1 = require("./packageManager");
|
|
14
15
|
async function setup(ctx) {
|
|
15
16
|
await ctx.runBuildPhase(eas_build_job_1.BuildPhase.PREPARE_PROJECT, async () => {
|
|
16
17
|
await downloadAndUnpackProject(ctx);
|
|
18
|
+
if (ctx.env.NPM_TOKEN) {
|
|
19
|
+
await npmrc_1.createNpmrcIfNotExistsAsync(ctx);
|
|
20
|
+
}
|
|
17
21
|
});
|
|
18
22
|
await ctx.runBuildPhase(eas_build_job_1.BuildPhase.PRE_INSTALL_HOOK, async () => {
|
|
19
23
|
await hooks_1.runHookIfPresent(ctx, hooks_1.Hook.PRE_INSTALL);
|
|
@@ -48,7 +52,7 @@ async function installDependencies(ctx) {
|
|
|
48
52
|
const packagerRunDir = packageManager_1.findPackagerRootDir(ctx.reactNativeProjectDirectory);
|
|
49
53
|
if (packagerRunDir !== ctx.reactNativeProjectDirectory) {
|
|
50
54
|
const relativeReactNativeProjectDirectory = path_1.default.relative(ctx.buildDirectory, ctx.reactNativeProjectDirectory);
|
|
51
|
-
ctx.logger.info(`We
|
|
55
|
+
ctx.logger.info(`We detected that '${relativeReactNativeProjectDirectory}' is a workspace`);
|
|
52
56
|
}
|
|
53
57
|
const relativePackagerRunDir = path_1.default.relative(ctx.buildDirectory, packagerRunDir);
|
|
54
58
|
ctx.logger.info(`Running ${ctx.packageManager} in ${relativePackagerRunDir
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/utils/project.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAExB,kEAA4C;AAC5C,uDAAyE;AACzE,sEAAuC;AACvC,wDAA0B;AAI1B,mCAAiD;AACjD,qDAAuD;AAEhD,KAAK,UAAU,KAAK,CAAmB,GAAuB;IACnE,MAAM,GAAG,CAAC,aAAa,CAAC,0BAAU,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,wBAAwB,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/utils/project.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\n\nimport downloadFile from '@expo/downloader';\nimport { ArchiveSourceType, BuildPhase, Job } from '@expo/eas-build-job';\nimport spawn from '@expo/turtle-spawn';\nimport fs from 'fs-extra';\n\nimport { BuildContext } from '../context';\n\nimport { Hook, runHookIfPresent } from './hooks';\nimport { createNpmrcIfNotExistsAsync } from './npmrc';\nimport { findPackagerRootDir } from './packageManager';\n\nexport async function setup<TJob extends Job>(ctx: BuildContext<TJob>): Promise<void> {\n await ctx.runBuildPhase(BuildPhase.PREPARE_PROJECT, async () => {\n await downloadAndUnpackProject(ctx);\n if (ctx.env.NPM_TOKEN) {\n await createNpmrcIfNotExistsAsync(ctx);\n }\n });\n\n await ctx.runBuildPhase(BuildPhase.PRE_INSTALL_HOOK, async () => {\n await runHookIfPresent(ctx, Hook.PRE_INSTALL);\n });\n\n await ctx.runBuildPhase(BuildPhase.INSTALL_DEPENDENCIES, async () => {\n await installDependencies(ctx);\n });\n\n await ctx.runBuildPhase(BuildPhase.READ_APP_CONFIG, async () => {\n const appConfig = ctx.appConfig;\n ctx.logger.info('Using app configuration:');\n ctx.logger.info(JSON.stringify(appConfig, null, 2));\n });\n}\n\nasync function downloadAndUnpackProject<TJob extends Job>(ctx: BuildContext<TJob>): Promise<void> {\n const projectTarball = path.join(ctx.workingdir, 'project.tar.gz');\n if (ctx.job.projectArchive.type === ArchiveSourceType.S3) {\n throw new Error('ArchiveSourceType.S3 should be resolved earlier to url');\n } else if (ctx.job.projectArchive.type === ArchiveSourceType.PATH) {\n await fs.copy(ctx.job.projectArchive.path, projectTarball); // used in eas-build-cli\n } else if (ctx.job.projectArchive.type === ArchiveSourceType.URL) {\n await downloadFile(ctx.job.projectArchive.url, projectTarball);\n }\n\n await spawn(\n 'tar',\n ['--strip-components', '1', '-zxf', 'project.tar.gz', '-C', ctx.buildDirectory],\n {\n cwd: ctx.workingdir,\n logger: ctx.logger,\n }\n );\n}\n\nasync function installDependencies<TJob extends Job>(ctx: BuildContext<TJob>): Promise<void> {\n const packagerRunDir = findPackagerRootDir(ctx.reactNativeProjectDirectory);\n if (packagerRunDir !== ctx.reactNativeProjectDirectory) {\n const relativeReactNativeProjectDirectory = path.relative(\n ctx.buildDirectory,\n ctx.reactNativeProjectDirectory\n );\n ctx.logger.info(`We detected that '${relativeReactNativeProjectDirectory}' is a workspace`);\n }\n\n const relativePackagerRunDir = path.relative(ctx.buildDirectory, packagerRunDir);\n ctx.logger.info(\n `Running ${ctx.packageManager} in ${\n relativePackagerRunDir\n ? `directory '${relativePackagerRunDir}'`\n : 'the root dir of your repository'\n } `\n );\n await spawn(ctx.packageManager, ['install'], {\n cwd: packagerRunDir,\n logger: ctx.logger,\n env: ctx.env,\n });\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@expo/build-tools",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.89",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"files": [
|
|
@@ -19,10 +19,10 @@
|
|
|
19
19
|
"bugs": "https://github.com/expo/eas-build/issues",
|
|
20
20
|
"license": "BUSL-1.1",
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@expo/config": "6.0.
|
|
23
|
-
"@expo/config-plugins": "4.0.
|
|
22
|
+
"@expo/config": "6.0.2",
|
|
23
|
+
"@expo/config-plugins": "4.0.2",
|
|
24
24
|
"@expo/downloader": "0.0.16",
|
|
25
|
-
"@expo/eas-build-job": "0.2.
|
|
25
|
+
"@expo/eas-build-job": "0.2.53",
|
|
26
26
|
"@expo/fastlane": "0.0.26",
|
|
27
27
|
"@expo/logger": "0.0.21",
|
|
28
28
|
"@expo/package-manager": "^0.0.34",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"fast-glob": "^3.2.5",
|
|
34
34
|
"find-yarn-workspace-root": "^2.0.0",
|
|
35
35
|
"fs-extra": "^9.0.0",
|
|
36
|
-
"node-forge": "^0.
|
|
36
|
+
"node-forge": "^0.10.0",
|
|
37
37
|
"nullthrows": "^1.1.1",
|
|
38
38
|
"plist": "^3.0.1"
|
|
39
39
|
},
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"@types/fs-extra": "^9.0.1",
|
|
42
42
|
"@types/jest": "^26.0.20",
|
|
43
43
|
"@types/node": "^14.14.31",
|
|
44
|
-
"@types/node-forge": "^0.8
|
|
44
|
+
"@types/node-forge": "^0.10.8",
|
|
45
45
|
"@types/plist": "^3.0.2",
|
|
46
46
|
"@types/uuid": "^3.4.5",
|
|
47
47
|
"@types/xml2js": "^0.4.5",
|
package/templates/npmrc
ADDED