Skip to content

Commit

Permalink
updated the CircleCI config file to use multiple Python versions
Browse files Browse the repository at this point in the history
  • Loading branch information
monocongo committed Feb 1, 2020
1 parent 9b79612 commit 1bb3fc1
Showing 1 changed file with 100 additions and 48 deletions.
148 changes: 100 additions & 48 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,54 +1,106 @@
# Python CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-python/ for more details
#
version: 2
workflows:
version: 2
test:
jobs:
- test-3.7
- test-3.6
jobs:
build_3.7:
docker:
# specify the version you desire here
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
- image: circleci/python:3.7

working_directory: ~/repo
test-3.7: &test-template
docker:
- image: circleci/python:3.7
working_directory: ~/repo
steps:
- checkout
- restore_cache:
keys:
- v1-dependencies-{{ checksum "requirements.txt" }}
# fallback to using the latest cache if no exact match is found
- v1-dependencies-
- run:
name: install dependencies
command: |
python3 -m venv venv
. venv/bin/activate
pip install -e .
steps:
- checkout
- save_cache:
paths:
- ./venv
key: v1-dependencies-{{ checksum "requirements.txt" }}

# Download and cache dependencies
- restore_cache:
keys:
- v1-dependencies-{{ checksum "requirements.txt" }}
# fallback to using the latest cache if no exact match is found
- v1-dependencies-
- run:
name: run tests
command: |
. venv/bin/activate
pip install codecov
pip install coverage
pip install opencv-python
pip install pytest
pip install scikit-image
coverage run -m pytest tests
codecov
- run:
name: install dependencies
command: |
python3 -m venv venv
. venv/bin/activate
pip install -e .
# store artifacts (for example logs, binaries, etc)
# to be available in the web app or through the API
- store_artifacts:
path: test-reports

- save_cache:
paths:
- ./venv
key: v1-dependencies-{{ checksum "requirements.txt" }}
test-3.6:
<<: *test-template
docker:
- image: circleci/python:3.6

# run tests with tox
- run:
name: run tests
command: |
. venv/bin/activate
pip install codecov
pip install coverage
pip install opencv-python
pip install pytest
pip install scikit-image
coverage run -m pytest tests
codecov
# tox

# store artifacts (for example logs, binaries, etc)
# to be available in the web app or through the API
- store_artifacts:
path: test-reports
#
## Python CircleCI 2.0 configuration file
##
## Check https://circleci.com/docs/2.0/language-python/ for more details
##
#jobs:
# build:
# docker:
# # specify the version you desire here
# # CircleCI maintains a library of pre-built images
# # documented at https://circleci.com/docs/2.0/circleci-images/
# - image: circleci/python:3.7
#
# working_directory: ~/repo
#
# steps:
# - checkout
#
# # Download and cache dependencies
# - restore_cache:
# keys:
# - v1-dependencies-{{ checksum "requirements.txt" }}
# # fallback to using the latest cache if no exact match is found
# - v1-dependencies-
#
# - run:
# name: install dependencies
# command: |
# python3 -m venv venv
# . venv/bin/activate
# pip install -e .
#
# - save_cache:
# paths:
# - ./venv
# key: v1-dependencies-{{ checksum "requirements.txt" }}
#
# - run:
# name: run tests
# command: |
# . venv/bin/activate
# pip install codecov
# pip install coverage
# pip install opencv-python
# pip install pytest
# pip install scikit-image
# coverage run -m pytest tests
# codecov
#
# # store artifacts (for example logs, binaries, etc)
# # to be available in the web app or through the API
# - store_artifacts:
# path: test-reports

0 comments on commit 1bb3fc1

Please sign in to comment.