Skip to content

Commit 8c4ddff

Browse files
smnbbrvhansl
authored andcommitted
feat(@schematics/update): add per-project .npmrc file support
1 parent c6a92a6 commit 8c4ddff

File tree

1 file changed

+12
-6
lines changed
  • packages/schematics/update/update

1 file changed

+12
-6
lines changed

packages/schematics/update/update/npm.ts

+12-6
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,21 @@ function _readNpmRc(): Observable<{ [key: string]: string }> {
3333
// TODO: have a way to read options without using fs directly.
3434
const path = require('path');
3535
const fs = require('fs');
36+
const perProjectNpmrc = path.resolve('.npmrc');
3637

3738
let npmrc = '';
38-
if (process.platform === 'win32') {
39-
if (process.env.LOCALAPPDATA) {
40-
npmrc = fs.readFileSync(path.join(process.env.LOCALAPPDATA, '.npmrc')).toString('utf-8');
41-
}
39+
40+
if (fs.existsSync(perProjectNpmrc)) {
41+
npmrc = fs.readFileSync(perProjectNpmrc).toString('utf-8');
4242
} else {
43-
if (process.env.HOME) {
44-
npmrc = fs.readFileSync(path.join(process.env.HOME, '.npmrc')).toString('utf-8');
43+
if (process.platform === 'win32') {
44+
if (process.env.LOCALAPPDATA) {
45+
npmrc = fs.readFileSync(path.join(process.env.LOCALAPPDATA, '.npmrc')).toString('utf-8');
46+
}
47+
} else {
48+
if (process.env.HOME) {
49+
npmrc = fs.readFileSync(path.join(process.env.HOME, '.npmrc')).toString('utf-8');
50+
}
4551
}
4652
}
4753

0 commit comments

Comments
 (0)