11version: 2
22
33jobs:
4- build_and_test_python27:
5- docker:
6- - image: circleci/python:2.7
7- - image: rabbitmq:3
8- - image: mongo:3.4
9-
10- working_directory: ~/repo
11-
12- environment:
13- VIRTUALENV_DIR: "~/virtualenv"
14- # Don't install various StackStorm dependencies which are already
15- # installed by CI again in the various check scripts
16- ST2_INSTALL_DEPS: "0"
17- # 3.3 is the last version to support python27
18- ST2_BRANCH: "v3.3"
19-
20- steps:
21- - checkout
22- - restore_cache:
23- key: v1-dependency-cache-py27-{{ checksum "requirements.txt" }}
24- - run:
25- name: Download dependencies
26- command: |
27- git clone -b master git://github.com/stackstorm-exchange/ci.git ~/ci
28- ~/ci/.circle/dependencies
29- - run:
30- name: Run tests (Python 2.7)
31- command: ~/ci/.circle/test
32- - save_cache:
33- key: v1-dependency-cache-py27-{{ checksum "requirements.txt" }}
34- paths:
35- - ~/.cache/pip
36- - ~/.apt-cache
37- # NOTE: We use virtualenv files from Python 2.7 step in "deploy" job so we
38- # only persist paths from this job
39- - persist_to_workspace:
40- root: /
41- paths:
42- - home/circleci/ci
43- - home/circleci/virtualenv
44- - tmp/st2
45- - home/circleci/repo
46- - home/circleci/.gitconfig
47-
48- # NOTE: Until we add "python_version" metadata attribute to pack.yaml and
49- # explicitly call which packs work with Python 3.x, Python 3.x failures are
50- # not considered fatal
514 build_and_test_python36:
525 docker:
536 - image: circleci/python:3.6
@@ -89,10 +42,21 @@ jobs:
8942 paths:
9043 - ~/.cache/pip
9144 - ~/.apt-cache
45+ # NOTE: We use virtualenv files from Python 3.6 step in "deploy" job so we
46+ # only persist paths from this job
47+ - persist_to_workspace:
48+ root: /
49+ paths:
50+ - home/circleci/ci
51+ - home/circleci/virtualenv
52+ - tmp/st2
53+ - home/circleci/repo
54+ - home/circleci/.gitconfig
55+
9256
9357 deploy:
9458 docker:
95- - image: circleci/python:2.7
59+ - image: circleci/python:3.6
9660
9761 working_directory: ~/repo
9862
10266 steps:
10367 - checkout
10468 - restore_cache:
105- key: v1-dependency-cache-py27 -{{ checksum "requirements.txt" }}
69+ key: v1-dependency-cache-py36 -{{ checksum "requirements.txt" }}
10670 - attach_workspace:
10771 at: /
10872 - run:
@@ -123,17 +87,15 @@ workflows:
12387 # Workflow which runs on each push
12488 build_test_deploy_on_push:
12589 jobs:
126- - build_and_test_python27
12790 - build_and_test_python36
12891 - deploy:
12992 requires:
130- - build_and_test_python27
93+ - build_and_test_python36
13194 filters:
13295 branches:
13396 only: master
13497 build_test_weekly:
13598 jobs:
136- - build_and_test_python27
13799 - build_and_test_python36
138100 # Workflow which runs nightly - note we don't perform deploy job on nightly
139101 # build
0 commit comments