From 73ed4e76370408c1aed2e799b54faec3abb254d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arwid=20Thornstro=CC=88m?= Date: Wed, 2 Oct 2024 11:11:53 +0200 Subject: [PATCH] added securestring option to parameterstore create script --- .../aws/parameterstore/create/create.ts | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) 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}`));