diff --git a/src/commands/aws/parameterstore/create/create.ts b/src/commands/aws/parameterstore/create/create.ts index d8b0c14..9ff2bda 100644 --- a/src/commands/aws/parameterstore/create/create.ts +++ b/src/commands/aws/parameterstore/create/create.ts @@ -58,24 +58,35 @@ module.exports = { }, }); + const secureParameter = await prompt.confirm( + 'Should this parameter be secure?' + ); + + let parameterType = 'String'; + if (secureParameter) { + parameterType = 'SecureString'; + } + if (!parameterValue.value.trim()) { print.error(chalk.red('Parameter value cannot be empty.')); return; } const confirmCreate = await prompt.confirm( - `Create [${chalk.yellow(parameterName.name)}] with value [${chalk.yellow( + `Create [${chalk.yellow(parameterName.name)}] with value [${chalk.green( parameterValue.value - )}]?` + )}] as ${chalk.red(parameterType)}?` ); if (confirmCreate) { try { const createResult = await system.run( - `aws ssm put-parameter --name "${parameterName.name}" --value "${parameterValue.value}" --type String` + `aws ssm put-parameter --name "${parameterName.name}" --value "${parameterValue.value}" --type ${parameterType}` ); print.success( - chalk.green(`Parameter "${parameterName.name}" created successfully.`) + chalk.green( + `Parameter "${parameterName.name}" created successfully as ${parameterType}.` + ) ); } catch (error) { print.error(chalk.red(`Failed to create parameter: ${error.message}`));