diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..7690dd8 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,38 @@ +# Use the latest 2.1 version of CircleCI pipeline process engine. +# See: https://circleci.com/docs/2.0/configuration-reference +version: 2.1 + +# Orbs are reusable packages of CircleCI configuration that you may share across projects, enabling you to create encapsulated, parameterized commands, jobs, and executors that can be used across multiple projects. +# See: https://circleci.com/docs/2.0/orb-intro/ +orbs: + # The python orb contains a set of prepackaged CircleCI configuration you can use repeatedly in your configuration files + # Orb commands and jobs help you with common scripting around a language/tool + # so you dont have to copy and paste it everywhere. + # See the orb documentation here: https://circleci.com/developer/orbs/orb/circleci/python + python: circleci/python@1.2 + +# Define a job to be invoked later in a workflow. +# See: https://circleci.com/docs/2.0/configuration-reference/#jobs +jobs: + toxify: + docker: + - image: cimg/python:3.8 + steps: + - checkout + - run: + command: | + pip install tox tox-pyenv + pyenv install 2.7.18 + pyenv install 3.6.15 + pyenv install 3.7.12 + pyenv install 3.8.12 + pyenv install 3.9.9 + - run: + command: tox + +# Invoke jobs via workflows +# See: https://circleci.com/docs/2.0/configuration-reference/#workflows +workflows: + build-and-test: + jobs: + - toxify