Миграция Flyway не запускается в сценарии powershell пользовательских данных AWS EC2

Я поместил команду миграции flyway в сценарий powershell, так как хочу, чтобы она запускалась автоматически после создания окна EC2. Powershell запускает команду «flyway migrate», но на самом деле flyway ничего не выполняет. И я доказал это, выведя файл, когда выполнялась функция миграции пролетного пути. См. прикрепленный файл NoOutput png. Нажмите здесь, чтобы увидеть скриншот NoOutput

Затем, если я вручную выполню команду, она будет работать так, как ожидалось. Что я делаю не так? В чем может быть причина не запуска из powershell? Я не думаю, что в этом виноват powershell. И если это так, какой синтаксис я должен использовать? На самом деле я думаю о создании .exe-файла с миграцией flyway.cmd :))) - немного переосмыслил, я думаю.

Нажмите здесь, чтобы увидеть скриншот WithOutput


person Bogdan Popescu    schedule 31.10.2017    source источник


Ответы (1)


Попробуйте запустить flyway следующим образом:

&$FlywayDir\flyway.cmd | Out-File C:\filename.txt

Амперсанд (знак «и») здесь указывает PowerShell выполнить эту команду, а не рассматривать ее как командлет или строку.

Из этого блога: http://edgylogic.com/blog/powershell-and-external-commands-done-right/

person Hamish Carpenter    schedule 31.10.2017