diff options
author | John Estabrook <jestabro@vyos.io> | 2024-04-16 20:16:03 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-16 20:16:03 -0500 |
commit | ce7023bea759b44307a78a4b0bab52a9a79ec088 (patch) | |
tree | 8d142b0e80125457a4e78c2479c66299547e500d /src | |
parent | 6825873bd1e835836259094a5a7d666be8f0be6e (diff) | |
parent | f43edbd7cd36f52a0cd9c475b53f317882f4a6f9 (diff) | |
download | vyos-1x-ce7023bea759b44307a78a4b0bab52a9a79ec088.tar.gz vyos-1x-ce7023bea759b44307a78a4b0bab52a9a79ec088.zip |
Merge pull request #3321 from jestabro/confirm-pass
image-tools: T6154: installer prompts to confirm password
Diffstat (limited to 'src')
-rwxr-xr-x | src/op_mode/image_installer.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/op_mode/image_installer.py b/src/op_mode/image_installer.py index 9f6949fb3..b1311b6f9 100755 --- a/src/op_mode/image_installer.py +++ b/src/op_mode/image_installer.py @@ -60,7 +60,8 @@ MSG_INPUT_CONFIG_CHOICE: str = 'The following config files are available for boo MSG_INPUT_CONFIG_CHOOSE: str = 'Which file would you like as boot config?' MSG_INPUT_IMAGE_NAME: str = 'What would you like to name this image?' MSG_INPUT_IMAGE_DEFAULT: str = 'Would you like to set the new image as the default one for boot?' -MSG_INPUT_PASSWORD: str = 'Please enter a password for the "vyos" user' +MSG_INPUT_PASSWORD: str = 'Please enter a password for the "vyos" user:' +MSG_INPUT_PASSWORD_CONFIRM: str = 'Please confirm password for the "vyos" user:' MSG_INPUT_ROOT_SIZE_ALL: str = 'Would you like to use all the free space on the drive?' MSG_INPUT_ROOT_SIZE_SET: str = 'Please specify the size (in GB) of the root partition (min is 1.5 GB)?' MSG_INPUT_CONSOLE_TYPE: str = 'What console should be used by default? (K: KVM, S: Serial, U: USB-Serial)?' @@ -74,6 +75,7 @@ MSG_WARN_ROOT_SIZE_TOOBIG: str = 'The size is too big. Try again.' MSG_WARN_ROOT_SIZE_TOOSMALL: str = 'The size is too small. Try again' MSG_WARN_IMAGE_NAME_WRONG: str = 'The suggested name is unsupported!\n'\ 'It must be between 1 and 64 characters long and contains only the next characters: .+-_ a-z A-Z 0-9' +MSG_WARN_PASSWORD_CONFIRM: str = 'The entered values did not match. Try again' CONST_MIN_DISK_SIZE: int = 2147483648 # 2 GB CONST_MIN_ROOT_SIZE: int = 1610612736 # 1.5 GB # a reserved space: 2MB for header, 1 MB for BIOS partition, 256 MB for EFI @@ -695,8 +697,14 @@ def install_image() -> None: print(MSG_WARN_IMAGE_NAME_WRONG) # ask for password - user_password: str = ask_input(MSG_INPUT_PASSWORD, default='vyos', - no_echo=True) + while True: + user_password: str = ask_input(MSG_INPUT_PASSWORD, no_echo=True, + non_empty=True) + confirm: str = ask_input(MSG_INPUT_PASSWORD_CONFIRM, no_echo=True, + non_empty=True) + if user_password == confirm: + break + print(MSG_WARN_PASSWORD_CONFIRM) # ask for default console console_type: str = ask_input(MSG_INPUT_CONSOLE_TYPE, |