无法使用 Bitbucket 管道部署到 EB

Unable to deploy to EB using Bitbucket pipelines

我们已经建立了运行良好的管道脚本。最近,我们决定自动部署到 elastic beanstalk,使用 bitbucket 管道并遵循使用命令 eb deploy 进行部署的教程。显然,此命令在管道上失败。配置文件似乎是合法的,因为它 运行 在本地。它还从我们在管道文件中指定的同一图像的容器内 运行s,并且还通过从本地使用 docker exec 到 运行 容器内的命令相同的图像。以下是管道文件和我们使用 eb deploy --verbose 命令得到的错误。我显然在这里遗漏了一些东西。任何帮助或指导将不胜感激。提前谢谢你。

feature/KKLT-1065-deploy-via-pipelines:
  - step:
      deployment: staging
      caches:
        - composer
      script:
        - php -r "file_exists('.env') || copy('.env.example', '.env');"
        - cat .env
        - composer install
        - php artisan cache:clear
        - php artisan migrate
        - php artisan db:seed
        - eb init KMLT-staging-ttl -r eu-central-1 -p "64bit Amazon Linux 2017.09 v2.6.4 running PHP 7.1"
        - eb deploy --verbose
      services:
        - postgres
+ eb deploy --verbose
INFO: Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ebcli/core/ebrun.py", line 41, in run_app
    app.run()
  File "/usr/lib/python2.7/site-packages/cement/core/foundation.py", line 797, in run
    return_val = self.controller._dispatch()
  File "/usr/lib/python2.7/site-packages/cement/core/controller.py", line 472, in _dispatch
    return func()
  File "/usr/lib/python2.7/site-packages/cement/core/controller.py", line 475, in _dispatch
    self._parse_args()
  File "/usr/lib/python2.7/site-packages/cement/core/controller.py", line 452, in _parse_args
    self.app._parse_args()
  File "/usr/lib/python2.7/site-packages/cement/core/foundation.py", line 1076, in _parse_args
    for res in self.hook.run('post_argument_parsing', self):
  File "/usr/lib/python2.7/site-packages/cement/core/hook.py", line 150, in run
    res = hook[2](*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/ebcli/core/hooks.py", line 35, in pre_run_hook
    set_profile(app.pargs.profile)
  File "/usr/lib/python2.7/site-packages/ebcli/core/hooks.py", line 47, in set_profile
    profile = commonops.get_default_profile()
  File "/usr/lib/python2.7/site-packages/ebcli/operations/commonops.py", line 973, in get_default_profile
    profile = get_config_setting_from_branch_or_default('profile')
  File "/usr/lib/python2.7/site-packages/ebcli/operations/commonops.py", line 1008, in get_config_setting_from_branch_or_default
    setting = get_setting_from_current_branch(key_name)
  File "/usr/lib/python2.7/site-packages/ebcli/operations/commonops.py", line 991, in get_setting_from_current_branch
    branch_name = source_control.get_current_branch()
  File "/usr/lib/python2.7/site-packages/ebcli/objects/sourcecontrol.py", line 184, in get_current_branch
    stdout, stderr, exitcode = self._run_cmd(revparse_command, handle_exitcode=False)
  File "/usr/lib/python2.7/site-packages/ebcli/objects/sourcecontrol.py", line 480, in _run_cmd
    stdout, stderr, exitcode = exec_cmd(cmd)
  File "/usr/lib/python2.7/site-packages/cement/utils/shell.py", line 40, in exec_cmd
    proc = Popen(cmd_args, *args, **kw)
  File "/usr/lib/python2.7/subprocess.py", line 390, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1024, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory
INFO: OSError - [Errno 2] No such file or directory

尝试 python3 版本的 eb 而不是 python2.7。可能会有更大的成功。