#bitbucket #bitbucket-pipelines
Вопрос:
Я пытаюсь настроить конвейер Bibucket для развертывания приложения React. Все работает нормально, за исключением тех случаев, когда я внес некоторые изменения, чтобы сохранить релизы на сервере. Для этого я пытаюсь экспортировать переменную среды, которая будет использоваться в следующих командах. В настоящее время у меня это определено (я использую конвейер atlassian/ssh: 0.2.0).:
COMMAND: "'tar -zxf build.tar.gz amp;amp; rm build.tar.gz amp;amp; export CURRENT_REVISION=$(date %d%m%Y%H%M%S) amp;amp; mv build /var/www/html/releases/$CURRENT_REVISION amp;amp; rm /var/www/html/current amp;amp; ln -s /var/www/html/releases/$CURRENT_REVISION /var/www/html/current amp;amp; echo $CURRENT_REVISION >> /var/www/html/revisions.log'"
Я использовал здесь две кавычки, чтобы попытаться заставить команды оцениваться на удаленном сервере, однако из журнала конвейера у меня есть следующее:
'tar -zxf build.tar.gz amp;amp; rm build.tar.gz amp;amp; export CURRENT_REVISION=06052021145645 amp;amp; mv build /var/www/html/releases/ amp;amp; rm /var/www/html/current amp;amp; ln -s /var/www/html/releases/ /var/www/html/current amp;amp; echo >> /var/www/html/revisions.log'
Команда «дата» вычисляется перед командой SSH, и в тех местах, где она должна использовать эту переменную, она пуста. Для меня не проблема, чтобы «дата» оценивалась в контейнере, но я не понимаю, почему переменная не определена в то время, когда она должна ее использовать. Я пытался вызвать его с помощью ${CURRENT_REVISION}, но у меня такое же поведение. У кого-нибудь есть какие-нибудь предложения? Заранее спасибо.