diff --git a/bin/netdisco-deploy b/bin/netdisco-deploy index c676bd1f..566592d4 100755 --- a/bin/netdisco-deploy +++ b/bin/netdisco-deploy @@ -174,9 +174,7 @@ sub deploy_db { print color 'reset'; say ''; - my $name = $term->get_reply(prompt => 'Username: '); - my $pass = $term->get_reply(prompt => 'Password: '); - + my ($name, $pass) = get_userpass($term); $users->create({ username => $name, password => _make_password($pass), @@ -196,6 +194,19 @@ sub deploy_db { ); } +sub get_userpass { + my $term = shift; + my $name = $term->get_reply(prompt => 'Username: '); + my $pass = $term->get_reply(prompt => 'Password: '); + + unless ($name and $pass) { + say 'username and password cannot be empty, please try again.'; + ($name, $pass) = get_userpass($term); + } + + return ($name, $pass); +} + sub deploy_oui { my $schema = schema('netdisco'); $schema->storage->disconnect;