Я запускаю приведенную ниже команду awscli в сценарии bash на этапе teamcity
#!/bin/bash
repo=%env.RepoName%
echo "repo is ${repo}"
tags=%env.Tags%
echo "tags are ${tags}"
aws ecr create-repository --repository-name ${repo} --tags '${tags}'
где %env.RepoName%
и %env.Tags%
- переменные teamcity со значениями sample-repo
и [{"Key":"env","Value":"dev"},{"Key":"dept","Value":"finance"}]
соответственно. Однако, когда команда aws cli запускается, она выдает ошибку со следующей ошибкой
Expecting property name enclosed in double quotes: line 1 column 3 (char 2)
Однако, если я передам значение %env.Tags%
как '[{"Key":"env","Value":"dev"},{"Key":"dept","Value":"finance"}]'
с одинарными кавычками и исключу ''
из свойства tags в команде aws cli, он будет работать без проблем.
Что мне не хватает, и есть ли рекомендуемый способ исправить это?
${tags}
, а не его содержимое. - person Benjamin W.   schedule 04.09.2020' '
при передаче ввода и при этом заставить команду aws-cli работать в сценарии bash? - person vkr   schedule 04.09.2020