Почему я получаю сообщение об ошибке при запросе параметров SSM через get-parameters-by-path?

Я пытаюсь запросить некоторые параметры SSM по пути (в Gitbash):

aws --region eu-west-2 --profile some-profile ssm get-parameters-by-path --path /prefix/prefix2

Существует ряд параметров, соответствующих этому префиксу, например

/prefix/prefix2/p1
/prefix/prefix2/p2
...

Я получаю следующее сообщение об ошибке:

Произошла ошибка (ValidationException) при вызове операции GetParametersByPath: параметр не соответствует требованиям к имени параметра. Имя параметра должно начинаться с косой черты /. Он не может иметь префикс aws или ssm (без учета регистра). В нем должны использоваться только буквы, цифры или следующие символы:. (точка), - (дефис), _ (подчеркивание). Спецсимволы не допустимы. Все подпути, если они указаны, должны использовать символ косой черты /. Допустимый пример: /get/parameters2-/by1./path0_.

Я получаю ту же ошибку, если префиксы заканчиваются на /. В чем причина проблемы?


person John    schedule 11.09.2020    source источник
comment
Какую версию интерфейса командной строки AWS вы используете? Можете ли вы запустить эту команду в командной строке?   -  person stdunbar    schedule 11.09.2020
comment
aws --version == aws-cli/2.0.48 Python/3.7.7 Windows/10 exe/AMD64, это последняя версия инструмента CLI.   -  person John    schedule 11.09.2020
comment
Ах, это по какой-то причине несовместимость с Gitbash. Windows CMD работает.   -  person John    schedule 11.09.2020
comment
Я просто попробовал и тоже работал на своем Mac. Кажется, проблема с Gitbash.   -  person CK__    schedule 11.09.2020
comment
На заметку, это более старая ошибка, которая хотя исправлено.   -  person CK__    schedule 11.09.2020
comment
Спасибо, я думаю, что проблема с Gitbash все еще существует, поскольку CLI - это самая последняя доступная версия, я только что обновил, и это все еще проблема.   -  person John    schedule 11.09.2020
comment
Что, если вы поместите путь в двойные кавычки?   -  person stdunbar    schedule 11.09.2020
comment
Одиночные кавычки, двойные кавычки, отсутствие кавычек - все это дает одну и ту же ошибку.   -  person John    schedule 11.09.2020


Ответы (2)


Если вы используете команду на базе Windows, используйте:

aws ssm get-parameters-by-path --path '//dev//another//path'

(Двойная косая черта)

Это решило мою проблему в Windows.

person Pepe El Toro    schedule 26.11.2020

Если вы используете bash на основе MSYS в Windows, убедитесь, что вы используете префикс MSYS2_ARG_CONV_EXCL = *, чтобы предотвратить расширение / prefix / prefix2 на путь Windows.

person Dylan Nicholson    schedule 30.09.2020