Сценарий оболочки для запуска команд интерфейса командной строки AWS
Кто-нибудь может подсказать, какой правильный синтаксис для запуска команд AWS CLI из сценария оболочки. Я пытаюсь выполнить следующие действия, но не получаю значения из AWS Secrets Manager, и мне не удается выполнить синтаксическую ошибку:
#!/bin/sh
aws configure set aws_access_key_id ******************
aws configure set aws_secret_access_key **********************
aws configure set default.region eu-west-1
command=$(aws secretsmanager get-secret-value --secret-id ${1} | jq --raw-output '.SecretString' | jq -r .myPassword)
export myvar=${command}
echo ${command}
Основная команда CLI AWS фактически работает, когда выполняется в одиночку, и выводит значение пароля на консоль.
aws secretsmanager get-secret-value --secret-id ${1} | jq --raw-output '.SecretString' | jq -r .myPassword
1 ответ
Замените "aws" на "/usr/bin/aws", если только aws-cli не настроен на вашем компьютере по-другому.
#!/bin/sh
/usr/bin/aws configure set aws_access_key_id ******************
/usr/bin/aws configure set aws_secret_access_key **********************
/usr/bin/aws configure set default.region eu-west-1
command=$(/usr/bin/aws secretsmanager get-secret-value --secret-id ${1} | jq --raw-output '.SecretString' | jq -r .myPassword)
export myvar=${command}
echo ${command}