#amazon-s3 #azure-devops #aws-cli
#amazon-s3 #azure-devops #aws-cli
Вопрос:
Я также задавал вопрос непосредственно в GitHub проекта, но я также рискну, поскольку здесь больше людей смотрят.
Подтвердите, изменив [ ] на [x] ниже:
- [x] Я просмотрел руководство пользователя и ссылку на API
- [x] Я искал предыдущие подобные проблемы и не нашел никакого решения
Проблема связана с использованием:
- [x] Service API: я хочу сделать X с помощью службы Y, что мне делать?
- [ ] CLI: передача аргументов или конфигураций cli.
- [ ] Другое / Не уверен.
Платформа / ОС / оборудование / устройство На чем вы используете cli? Я использую CLI на последней версии ubuntu (в настоящее время ubuntu-18.04), я также пробовал с ubuntu-20.04. Это используется на моем компакт-диске в Azure devops
Опишите вопрос Я продолжаю запускать следующую команду command как часть моего конвейера CD, и он продолжает сбоить с кодом ошибки 255. Когда я запускаю ту же команду локально на своем компьютере с тем же профилем пользователя, это работает. Однако мой локальный компьютер — macOS 10.15.
aws s3 sync /mybuildartifact/ s3://bucketName/subDir/ --delete --profile myUserProfile --debug
Я убедился, что CLI правильно установил профиль пользователя и что команда имеет к нему доступ. Я использовал следующие команды для настройки профиля пользователя и проверки его существования (я использую тот же метод для локального тестирования)
aws configure import --csv file://$(serviceUserCredentials.secureFilePath)
aws configure list-profiles
Журналы / вывод
Получите полную обратную трассировку и журналы ошибок, добавив --debug
в команду.
2020-11-24 16:24:11 346 — MainThread — botocore.hooks — DEBUG — Event load-cli-arg.custom.sync.metadata: вызов обработчика <awscli.paramfile.Объект URIArgumentHandler в 0x7f1a9618a320> 2020-11-24 16:24:11,346 — MainThread — botocore.hooks — DEBUG — Event load-cli-arg.custom.sync.copy-props: вызывающий обработчик <awscli.paramfile.Объект URIArgumentHandler в 0x7f1a9618a320> 2020-11-24 16:24:11,346 — MainThread — botocore.hooks — DEBUG — Event process-cli-arg.custom.sync: вызов обработчика <awscli.argprocess.Объект ParamShorthandParser в 0x7f1a968225f8> 2020-11-24 16:24:11,346 — MainThread — botocore.hooks — DEBUG — Event load-cli-arg.custom.sync.metadata-директива: вызов обработчика <awscli.paramfile .Объект URIArgumentHandler в 0x7f1a9618a320> 2020-11-24 16:24:11,346 — MainThread — botocore.hooks — DEBUG — Event load-cli-arg.custom.sync.size-only: вызов обработчика <awscli.paramfile.Объект URIArgumentHandler в 0x7f1a9618a320> 2020-11-24 16:24:11,346 — MainThread — botocore.hooks — DEBUG — Event process-cli-arg.custom.sync: вызов обработчика <awscli.argprocess.Объект ParamShorthandParser в 0x7f1a968225f8> 2020-11-24 16:24:11,346 — MainThread — botocore. крючки — ОТЛАДКА — Загрузка события-cli-arg.custom.sync.exact-timestamps: вызов обработчика <awscli.paramfile.Объект URIArgumentHandler в 0x7f1a9618a320> 2020-11-24 16:24:11,346 — MainThread — botocore.hooks — DEBUG — Event process-cli-arg.custom.sync: вызов обработчика <awscli.argprocess.Объект ParamShorthandParser в 0x7f1a968225f8> 2020-11-24 16:24:11,346 — MainThread — botocore.hooks — DEBUG — Event load-cli-arg.custom.sync.delete: вызов обработчика <awscli.paramfile.Объект URIArgumentHandler в 0x7f1a9618a320> 2020-11-24 16:24:11,346 — MainThread — botocore.hooks — DEBUG — Event process-cli-arg.custom.sync: вызов обработчика <awscli.argprocess.Объект ParamShorthandParser в 0x7f1a968225f8> 2020-11-24 16:24:11,346 — КОНЕЧНАЯ ТОЧКА MainThread — botocore.utils — DEBUG — IMDS: http://169.254.169.254 / 2020-11-24 16:24:11,349 — MainThread — urllib3.connectionpool — DEBUG — Запуск нового HTTP-соединения (1): 169.254.169.254:80 2020-11-24 16:24:11,351 — Основной поток -urllib3.connectionpool — DEBUG — http://169.254.169.254:80 «ПОСТАВИТЬ /последнюю версию /api/токен HTTP/1.1» 400 11 2020-11-24 16:24:11,351 — MainThread — awscli.clidriver — DEBUG — Исключение, перехваченное в main() Трассировка (последний последний вызов): Файл «awscli/clidriver.py «, строка 453, в основном файле «awscli/customizations/commands.py «, строка 198, в файле вызова «awscli/customizations/commands.py «, строка 191, в файле вызова «awscli/настройки/s3/подкоманды.py», строка 709, в файле _run_main «awscli/customizations/s3/subcommands.py «, строка 480, в файле _run_main «awscli/customizations/s3/subcommands.py «, строка 473, в файле get_client «botocore/session.py «, строка 778, в файле create_client «botocore/session.py «, строка 827, в файле _resolve_region_name «botocore/session.py «, строка 237, в файле get_config_variable «botocore/configprovider.py «, строка 289, в файле get_config_variable «botocore/configprovider.py «, строка 386, в файле предоставления «awscli/utils.py «, строка 60, в файле предоставления «awscli/utils.py «, строка 65, в файле _get_instance_metadata_region «awscli/utils.py «, строка 105, в файле retrieve_region «awscli/utils.py «, строка 114, в файле _get_region «botocore/utils.py «, строка 298, в _fetch_metadata_token botocore.utils.BadIMDSRequestError: <запрос botocore.aws.Объект AWSRequest в 0x7f1a96155160>
Комментарии:
1.
I keep running the following command command as part of my CD pipeline and it keeps failing with 255 error code. When I run the same command locally on my machine with the same user profile, it works.
Разработчики Azure используют учетную запись службы сбора проектов для запуска команды в конвейере. Пожалуйста, убедитесь, что у него есть достаточное разрешение, такое же, как и у вашей локальной учетной записи.2. как я уже говорил, я использовал точно такой же профиль пользователя. Я ответил на свой вопрос ответом, который я получил от участников репозитория на GitHub.
Ответ №1:
Итак, я получил ответ на GitHub, который связал меня с другой проблемой по какой-то причине, связанной с тем, как выполняется подключение к сети. для получения более подробной информации вы можете увидеть следующую проблему:
https://github.com/aws/aws-cli/issues/5623
В некоторых случаях, например, при запуске командной строки AWS в экземпляре Azure, другая служба может быть запущена с тем же IP-адресом, который не маршрутизируется, используемым IMDS. Один из способов обойти это — явно задать регион.
Как только я установил регион для профиля, который я использовал для запуска команды, это сработало.
Это также объясняет, почему у меня не было проблем с локальной работой.
Комментарии:
1. Спасибо, что поделились. Вы могли бы пометить его на случай, если кто-то другой столкнется с таким же сообщением об ошибке.