Я пытаюсь создать прослушиватель для своего AWS ALB и прикрепить к нему две мои целевые группы с помощью команды create-listener (AWS CLI), но возникают проблемы с созданием прослушивателя с этими двумя целевыми группами.
При создании слушателя из Консоли AWS и присоединении обеих целевых групп он работает, как ожидалось, или при использовании жестко запрограммированных arns целевых групп с указанным выше синтаксисом он работает:
listener=$(aws elbv2 create-listener --load-balancer-arn $lb_arn --protocol HTTP --port $http_external_port --default-actions '[{"Type": "forward", "Order": 1, "ForwardConfig": {"TargetGroups": [{"TargetGroupArn": "HARDCODED_FIRST_TG_ARN", "Weight": 50}, {"TargetGroupArn": "HARDCODED_SECOND_TG_ARN", "Weight": 50}]}}]')
Однако при использовании ARN в качестве переменных (что работает) команда create-listener завершается с ошибкой с приведенным выше сообщением об ошибке:
first_tg_arn=$(aws elbv2 describe-target-groups --names $first_tg_name --query "TargetGroups[*][TargetGroupArn]" --output text)
second_tg_arn=$(aws elbv2 describe-target-groups --names $second_tg_name --query "TargetGroups[*][TargetGroupArn]" --output text)
listener=$(aws elbv2 create-listener --load-balancer-arn $lb_arn --protocol HTTP --port $http_external_port --default-actions '[{"Type": "forward", "Order": 1, "ForwardConfig": {"TargetGroups": [{"TargetGroupArn": "${first_tg_arn}", "Weight": 50}, {"TargetGroupArn": "${second_tg_arn}", "Weight": 50}]}}]')
Произошла ошибка (ValidationError) при вызове операции CreateListener: '$ {first_tg_arn}' не является допустимым ARN целевой группы
Выше были прикреплены оба способа выполнения команды (с жестко запрограммированными ARN и с использованием переменных ARN).
В чем может быть проблема? Спасибо.