运行flyway命令只是打印帮助并以python脚本退出

2024-04-28 22:17:01 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我有一个Python脚本,我正在通过AWS CodeBuild运行。它使用flyway命令行docker容器执行以下命令:

cmd = 'flyway -user=' + connection_items['username'] + ' -password=' + connection_items['password'] + ' migrate'
os.system(cmd) # I know this is insecure... just trying to get a migration to run

它执行flyway时没有任何参数,只打印帮助和出口。有人对我做错了什么有什么建议吗?我还不能通过subprocess模块运行(我有路径问题)

谢谢!你知道吗


Tags: todocker命令行命令脚本cmdawsusername
1条回答
网友
1楼 · 发布于 2024-04-28 22:17:01

它看起来更像是一个shell扩展问题,而不是代码构建问题。你知道吗

你的构建规范很混乱,我重写了你的构建规范如下。我希望这有助于:

 -
version: 0.2
phases:
  install:
    runtime-versions:
      python: 3.7
    commands:
     - echo "Installing flyway..."
     - nohup /usr/local/bin/dockerd  host=unix:///var/run/docker.sock  host=tcp://0.0.0.0:2375  storage-driver=overlay&
     - timeout 15 sh -c "until docker info; do echo .; sleep 1; done"
     - echo "docker run  rm flyway/flyway:6.0.4 -url=jdbc:mysql://db -schemas=myschema -user=root -password=P@ssw0rd -connectRetries=60 migrate" > /usr/local/bin/flyway 
     - chmod +x /usr/local/bin/flyway
     - 
  build:
    commands:
      - echo building...
      - /usr/local/bin/flyway
      - python MigrateDatabase.py

另外,我确信您已经将项目环境的特权模式设置为true。你知道吗

相关问题 更多 >