From dd097e5439d5b662c9c2934ee400af8498f96927 Mon Sep 17 00:00:00 2001 From: Frederik Hahne Date: Thu, 16 Sep 2021 08:21:58 +0200 Subject: [PATCH] do not ask for additional okta properties if not selected (#16306) * do not ask for additional okta properties if not selected updates #16299 * add timeout to check for heroku login status correctly closes #16299 --- generators/heroku/index.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/generators/heroku/index.js b/generators/heroku/index.js index dd2daac2263c..e92f4529d944 100644 --- a/generators/heroku/index.js +++ b/generators/heroku/index.js @@ -244,6 +244,7 @@ module.exports = class extends BaseBlueprintGenerator { default: 1, }, { + when: answers => answers.useOkta, type: 'input', name: 'oktaAdminLogin', message: 'Login (valid email) for the JHipster Admin user:', @@ -255,6 +256,7 @@ module.exports = class extends BaseBlueprintGenerator { }, }, { + when: answers => answers.useOkta, type: 'confirm', name: 'oktaAdminPassword', message: `${chalk.blue('Take note of this password!')} You will need it on your first login: ${chalk.blue( @@ -391,7 +393,7 @@ module.exports = class extends BaseBlueprintGenerator { const regionParams = this.herokuRegion !== 'us' ? ` --region ${this.herokuRegion}` : ''; this.log(chalk.bold('\nCreating Heroku application and setting up node environment')); - const child = ChildProcess.exec(`heroku create ${this.herokuAppName}${regionParams}`, (err, stdout, stderr) => { + const child = ChildProcess.exec(`heroku create ${this.herokuAppName}${regionParams}`, { timeout: 6000 }, (err, stdout, stderr) => { if (err) { if (stderr.includes('is already taken')) { const prompts = [ @@ -458,7 +460,11 @@ module.exports = class extends BaseBlueprintGenerator { }); } else { this.abort = true; - this.log.error(err); + if (stderr.includes('Invalid credentials')) { + this.log.error("Error: Not authenticated. Run 'heroku login' to login to your heroku account and try again."); + } else { + this.log.error(err); + } done(); } } else {