У меня есть конвейер Bitbucket, где он создает ресурсы AWS с использованием облачной информации и развертывает на нем веб-сайт. Но развертывание терпит неудачу, даже облачная информация создает стек правильно. Я думаю, что проблема в том, когда происходит развертывание облачной информации. Создание корзины S3, возможно, еще не завершено.
У меня есть веб-сайт Hugo, и я создал конвейер битовых пакетов для развертывания его на сервере. Он создает корзину S3, используя облачную информацию для размещения веб-сайта, а затем загружает на него веб-сайт Hugo. Когда я запускал шаги в конвейере вручную в терминале с задержкой между каждым шагом, это происходило успешно. Но когда это происходит на конвейере Bitbucket, он выдавал ошибку, говоря, что корзина S3, которую я пытаюсь загрузить, недоступна. Когда я проверил в AWS, это ведро фактически там. Это означает, что Cloudformation работал правильно. Но когда файлы начинают копироваться, корзина может быть недоступна для загрузки файла. Это мое предположение. Есть ли обходной путь для этого. Делая это локально, я могу ждать между двумя командами создания облачной информации и копирования файлов. Но как справиться с этим в среде конвейера Bitbucket. Ниже приведен мой код конвейера.
pipelines:
pull-requests:
'**':
- step:
script:
- aws cloudformation create-stack --stack-name demo-web --template-body file://cloudformation.json --parameters ParameterKey=S3BucketName,ParameterValue=demo-web
- hugo
- aws s3 cp public/ s3://demo-web/ --recursive
Как правильно обращаться с этим сценарием. Есть ли обходной путь для этой ситуации. Или проблема, которую я обнаружил, не является реальной проблемой.