使用特定的Miniconda Python和NumPy版本进行CircleCI测试

问题描述 投票:1回答:1

我正在一个使用CircleCI持续集成平台的项目中。我使用Python作为主要语言,并使用Miniconda作为平台。我想在CircleCI上使用Miniconda测试多个Python和NumPy版本。

我尝试使用不同的Python映像,但是在安装最新的Miniconda版本时,它仅使用Python 3.7。您能告诉我如何使用多个版本吗?

下面是config.yml

version: 2.0
workflows:
  version: 2
  test:
    jobs:
      - py3.6-np1.15
      - py3.5-np1.15
      - py3.6-np1.14
      - py3.5-np1.14
      - py3.7-np1.15
      - py3.5-np1.16
      - py3.6-np1.16
      - py3.7-np1.16

jobs:
  py3.6-np1.15: &test-template
    docker:
      - image: circleci/python:3.6.8
    environment:
      NUMPY_VERSION: 1.15.2
      CYTHON_VERSION: 0.29.2
    working_directory: ~/repo

    steps:
      - checkout
      - run:
          name: Install System Dependencies
          command: sudo apt-get update && sudo apt-get install -y libmpich12 libmpich-dev build-essential

      # Download and cache dependencies
      - restore_cache:
          keys:
            - v1-dependencies-{{ .Environment.CIRCLE_JOB }}-{{ checksum "setup.py" }}

      - run:
          name: install anaconda
          command: |
            wget https://repo.continuum.io/miniconda/Miniconda3-4.7.10-Linux-x86_64.sh -O ~/miniconda.sh
            chmod +x ~/miniconda.sh && ~/miniconda.sh -b
            export PATH=$HOME/miniconda3/bin:$PATH
            conda update --quiet --yes conda

      - run:
          name: Install numpy, cython, mdtraj
          command: |
            export PATH=$HOME/miniconda3/bin:$PATH
            conda install --quiet --yes numpy==$NUMPY_VERSION cython==$CYTHON_VERSION
            conda install --quiet --yes -c conda-forge mdtraj

      # - run:
      #     name: Upgrade pip
      #     command: |
      #       python3 -m venv venv
      #       . venv/bin/activate
      #       pip install pip==18.0

      # - run:
      #     name: Install numpy and cython
      #     command: |
      #       python3 -m venv venv
      #       . venv/bin/activate
      #       pip install --progress-bar off numpy==$NUMPY_VERSION cython==$CYTHON_VERSION

      - run:
          name: Install and build 
          command: |
            export PATH=$HOME/miniconda3/bin:$PATH
            pip install --progress-bar off .[dev]
            python setup.py build_ext --inplace
            python setup.py install



  py3.5-np1.15:
    <<: *test-template
    docker:
      - image: circleci/python:3.5.7
    environment:
      NUMPY_VERSION: 1.14.2
      CYTHON_VERSION: 0.29.2

  py3.6-np1.14:
    <<: *test-template
    environment:
      NUMPY_VERSION: 1.14.2
      CYTHON_VERSION: 0.29.2

  py3.5-np1.14:
    <<: *test-template
    docker:
      - image: circleci/python:3.5.7
    environment:
      NUMPY_VERSION: 1.14.2
      CYTHON_VERSION: 0.29.2

  py3.7-np1.15:
    <<: *test-template
    docker:
      - image: circleci/python:3.7.3

  py3.5-np1.16:
    <<: *test-template
    docker:
      - image: circleci/python:3.5.7
    environment:
      NUMPY_VERSION: 1.16.5
      CYTHON_VERSION: 0.29.2

  py3.6-np1.16:
    <<: *test-template
    environment:
      NUMPY_VERSION: 1.16.5
      CYTHON_VERSION: 0.29.2

  py3.7-np1.16:
    <<: *test-template
    docker:
      - image: circleci/python:3.7.3
    environment:
      NUMPY_VERSION: 1.16.5
      CYTHON_VERSION: 0.29.2

python circleci circleci-2.0
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.