Как добавить или получить путь запуска к продукту в Сервисном каталоге AWS, используя Javascript SDK
Я использую Javascript SDK от AWS для доступа к каталогу услуг в моей функции Lambda. https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/ServiceCatalog.html
Я успешно создал портфолио и продукт и прикрепил продукт к этому портфолио. Когда я пытаюсь подготовить продукт, он выдает ошибку "Путь запуска не найден". Чтобы получить список путей запуска, я нажимаю на API listLaunchPath, и он возвращает пустой массив с сообщением "Не найден путь запуска для этого продукта"
Я подробно изучил Документы AWS, но не нашел способа задать путь запуска. Кто-нибудь может подсказать мне, как создать и получить путь запуска для продукта в каталоге услуг AWS?
2 ответа
Сообщение об ошибке
Unable to launch provisioned product because: No launch paths found for resource
не очень полезно. Это может означать любое из следующего:
- Товара не существует
- Артефакт подготовки не существует
- Товар существует, но находится в неисправном состоянии
- У вас нет доступа к продукту
- У вас нет доступа к портфолио продукта
- Товар не связан с портфолио
- Путь запуска не существует
Поскольку сообщение об ошибке бесполезно, оно не говорит вам, кто из них виноват.
Чтобы увидеть, насколько бесполезно сообщение об ошибке, попробуйте для удовольствия следующее:
% aws servicecatalog provision-product --provisioned-product-name no --product-id nope --provisioning-artifact-id nopity-nope
An error occurred (ResourceNotFoundException) when calling the ProvisionProduct operation: No launch paths found for resource: nope
Несколько указателей, как заставить его работать:
- Свяжите продукт с портфолио.
- Свяжите принципала, который является или включает вас в портфель.
- Убедитесь, что продукт создан правильно, не используя
DisableTemplateValidation
. При создании продукта вы получите сообщение об ошибке, если в шаблоне есть ошибка. - Попробуйте описать артефакт подготовки, чтобы убедиться, что он существует.
- Попробуйте описать продукт. Если вы можете описать продукт, он существует, и у вас есть доступ. Вы должны увидеть путь запуска как часть описания продукта. Если вы можете описать продукт, но у него нет пути запуска, я подозреваю, что шаблон плохой.
Вам необходимо добавить роль / пользователя / группу IAM в портфель, к которому прикреплен ваш продукт. Используйте Role/User/Group Creds, чтобы перечислить путь запуска. Оно работает