4

我正在使用 python 3.6 开始新项目,我想将 circleci 附加到我的项目中。

我的 circle.yml 是

machine:
  timezone:
    Asia/Seoul

  python:
    version: 3.6.0

dependencies:
  pre:
    - pip install -r requirements/ci.txt

test:
  post:
    - python manage.py test

和circleci错误

python-build: definition not found: 3.6.0

The following versions contain `3.6.0' in the name:
  3.6.0b1

See all available versions with `pyenv install --list'.

If the version you need is missing, try upgrading pyenv:

  cd /opt/circleci/.pyenv/plugins/python-build/../.. && git pull && cd -

((if (or (= "3.6.0" "system") (pyenv versions --bare | grep -x -q "'3.6.0'")) (pyenv global "3.6.0") (chain-and (pyenv install --skip-existing "" "3.6.0") (pyenv global "3.6.0") (pyenv rehash) (pip install virtualenv) (pip install nose) (pip install pep8) (pyenv rehash)))) returned exit code 2

Action failed: set python version to 3.6.0

似乎 circleci 不支持最新的 pyenv 版本。

我如何解决它?

4

2 回答 2

5

您现在可以在 CircleCI 中使用 Python 3.6.0(在默认的 Ubuntu 14.04 映像中),方法是在以下位置添加以下内容circle.yml

machine:                                                                                                                                                                 
  pre:                                                                                                                                                                   
    - cd /opt/circleci/.pyenv; git pull                                                                                                                                  
  python:                                                                                                                                                                
    version: 3.6.0

不过,您在这里放弃的是大约 2 分钟的构建时间。如果您需要 3.6.0,这是一种解决方法,直到新的 CCI Ubuntu 14.04 映像在接下来的 3 周左右出现。

于 2016-12-29T18:59:32.717 回答
1

对于那些今天发现这个问题的人,CircleCI 已经解决了这个问题,所以现在标准配置可以通过 Python 3.6.1 运行。例如,我circle.yml要使用 3.6.1:

machine:
  python:
    version: 3.6.1

...
于 2017-06-01T23:38:54.037 回答