diff --git a/buildutils/src/local-repository.ts b/buildutils/src/local-repository.ts index 0dec118d488b..7e8a855ec70d 100644 --- a/buildutils/src/local-repository.ts +++ b/buildutils/src/local-repository.ts @@ -134,13 +134,13 @@ packages: console.log('Logging in'); const loginPs = child_process.spawn( 'npm', - `login -e ${email} -r ${local_registry}`.split(' ') + `login -r ${local_registry}`.split(' ') ); const loggedIn = new Promise((accept, reject) => { loginPs.stdout.on('data', (chunk: string) => { const data = Buffer.from(chunk, 'utf-8').toString().trim(); - console.log('debug:', data); + console.log('stdout:', data); switch (data) { case 'Username:': console.log('Passing username...'); @@ -150,16 +150,21 @@ packages: console.log('Passing password...'); loginPs.stdin.write(pass + '\n'); break; - case 'Email': + case 'Email: (this IS public)': console.log('Passing email...'); loginPs.stdin.write(email + '\n'); break; + default: + reject(`Unexpected prompt: "${data}"`); } if (data.indexOf('Logged in as') !== -1) { - console.log('debug: matched'); loginPs.stdin.end(); - accept(); + // do not accept here yet, the token may not have been written } + loginPs.stderr.on('data', (chunk: string) => { + const data = Buffer.from(chunk, 'utf-8').toString().trim(); + console.log('stderr:', data); + }); }); loginPs.on('error', error => reject(error)); loginPs.on('close', () => accept());