Я пытаюсь собрать свое приложение React в конвейер Bitbucket, а затем развернуть его с помощью git push на моем производственном сервере.
Это прекрасно работает, когда я помещаю все в один шаг, например:
image: node
clone:
depth: full
pipelines:
default:
- step:
name: Build app
caches:
- node
script:
- yarn
- yarn build
- git config user.email "<email>"
- git config user.name "<name>"
- git config remote.origin.url <remote ssh>
- git add .
- git commit -m "Add build"
- git push
Однако я хотел бы разделить процесс сборки и процесс развертывания на отдельные этапы.Позже я также добавлю тесты на этапе сборки.
Это то, что я пробовал:
image: node
clone:
depth: full
pipelines:
default:
- step:
name: Build app
caches:
- node
script:
- yarn
- yarn build
- step:
name: Deploy to production
deployment: production
script:
- git config user.email "<email>"
- git config user.name "<name>"
- git config remote.origin.url <remote ssh>
- git add .
- git commit -m "Add build"
- git push
Это проходит, но не производит различий на моем производственном сервере (в отличие от первого способа, который я сделал выше).Я предположил, что это потому, что новый шаг будет означать новый контейнер, и у этого нового контейнера не будет доступа к сборке, которую я делал на предыдущем шаге.
Я пытался обойти это с помощью артефактов, но безрезультатно.Я не могу найти способ получить мою сборку от первого шага до второго шага.
У кого-нибудь есть совет?