• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1sudo: true
2dist: xenial
3
4language: python
5
6cache:
7    directories:
8        - $HOME/.cache/pip
9        - $HOME/ossl-2/
10
11# Only build master, the version branches (e.g. 1.7.x), and
12# version tags (which are apparently considered branches by travis)
13branches:
14    only:
15        - master
16        - /\d+\.\d+\.x/
17        - /\d+\.\d+(\.\d+)?/
18
19matrix:
20    include:
21        # these are just to make travis's UI a bit prettier
22        - python: 2.7
23          env: TOXENV=py27
24        - python: 3.4
25          env: TOXENV=py34
26        - python: 3.5
27          env: TOXENV=py35
28        - python: 3.6
29          env: TOXENV=py36
30        - python: 3.7
31          env: TOXENV=py37
32        - python: 3.7
33          env: TOXENV=py37-idna
34        - python: pypy-5.4
35          env: TOXENV=pypy-nocoverage
36          # PyPy 5.4 isn't available for xenial
37          dist: trusty
38        - python: pypy2.7-5.10.0
39          env: TOXENV=pypy-nocoverage
40        - python: pypy3.5-5.10.1
41          env: TOXENV=pypy3-nocoverage
42        - python: 2.7
43          env: TOXENV=py27 OPENSSL=1.0.1u
44        - python: 3.7
45          env: TOXENV=py37 OPENSSL=1.0.1u
46        - python: 2.7
47          env: TOXENV=py27 OPENSSL=1.1.0j
48        - python: 3.5
49          env: TOXENV=py35 OPENSSL=1.1.0j
50        - python: 2.7
51          env: TOXENV=py27 OPENSSL=1.1.1a
52        - python: 3.7
53          env: TOXENV=py37 OPENSSL=1.1.1a
54        - python: 3.7
55          env: TOXENV=py37 LIBRESSL=2.6.5
56        - python: 3.7
57          env: TOXENV=py37 LIBRESSL=2.7.5
58        - python: 3.7
59          env: TOXENV=py37 LIBRESSL=2.8.3
60        - python: 3.7
61          env: TOXENV=py37 LIBRESSL=2.9.0
62
63        - python: 2.7
64          services: docker
65          env: TOXENV=py27 DOCKER=pyca/cryptography-runner-centos7
66        - python: 2.7
67          services: docker
68          env: TOXENV=py27 DOCKER=pyca/cryptography-runner-wheezy
69        - python: 2.7
70          services: docker
71          env: TOXENV=py27 DOCKER=pyca/cryptography-runner-jessie
72        - python: 3.4
73          services: docker
74          env: TOXENV=py34 DOCKER=pyca/cryptography-runner-jessie
75        - python: 2.7
76          services: docker
77          env: TOXENV=py27 DOCKER=pyca/cryptography-runner-stretch
78        - python: 3.5
79          services: docker
80          env: TOXENV=py35 DOCKER=pyca/cryptography-runner-stretch
81        - python: 3.7
82          services: docker
83          env: TOXENV=py37 DOCKER=pyca/cryptography-runner-buster
84        - python: 3.7
85          services: docker
86          env: TOXENV=py37 DOCKER=pyca/cryptography-runner-sid
87        - python: 2.7
88          services: docker
89          env: TOXENV=py27 DOCKER=pyca/cryptography-runner-ubuntu-rolling
90        - python: 3.6
91          services: docker
92          env: TOXENV=py36 DOCKER=pyca/cryptography-runner-ubuntu-rolling
93        - python: 2.7
94          services: docker
95          env: TOXENV=randomorder DOCKER=pyca/cryptography-runner-ubuntu-rolling
96        - python: 2.7
97          services: docker
98          env: TOXENV=py27 DOCKER=pyca/cryptography-runner-fedora
99        - python: 3.7
100          services: docker
101          env: TOXENV=py37 DOCKER=pyca/cryptography-runner-fedora
102        - python: 3.6
103          services: docker
104          env: TOXENV=py36 DOCKER=pyca/cryptography-runner-alpine:latest
105
106        - python: 3.6
107          env: TOXENV=docs OPENSSL=1.1.1a
108          addons:
109              apt:
110                  packages:
111                      - libenchant-dev
112        - python: 2.7
113          services: docker
114          env: TOXENV=docs-linkcheck DOCKER=pyca/cryptography-runner-buster
115          if: branch = master AND type != pull_request
116        - python: 3.4
117          env: TOXENV=pep8
118
119        - python: 2.7
120          env: DOWNSTREAM=pyopenssl
121        - python: 2.7
122          env: DOWNSTREAM=twisted
123        - python: 2.7
124          env: DOWNSTREAM=paramiko
125        - python: 2.7
126          env: DOWNSTREAM=aws-encryption-sdk
127        - python: 2.7
128          # BOTO_CONFIG works around this boto issue on travis:
129          # https://github.com/boto/boto/issues/3717
130          env: DOWNSTREAM=dynamodb-encryption-sdk OPENSSL=1.1.0j BOTO_CONFIG=/dev/null
131        - python: 2.7
132          env: DOWNSTREAM=certbot OPENSSL=1.1.0j
133        - python: 2.7
134          env: DOWNSTREAM=certbot-josepy
135        - python: 2.7
136          env: DOWNSTREAM=urllib3
137
138install:
139    - ./.travis/install.sh
140
141script:
142    - ./.travis/run.sh
143
144after_success:
145    - ./.travis/upload_coverage.sh
146
147notifications:
148    irc:
149        channels:
150            # This is set to a secure variable to prevent forks from notifying the
151            # IRC channel whenever they fail a build. This can be removed when travis
152            # implements https://github.com/travis-ci/travis-ci/issues/1094.
153            # The value encrypted here was created via
154            # travis encrypt "irc.freenode.org#cryptography-dev"
155            - secure: "A93qvTOlwlMK5WoEvZQ5jQ8Z4Hd0JpeO53WYt8iIJ3s/L6AubkfiN7gwhThRtPnPx7DVMenoKRMlcRg76/ICvXEViVnGgXFjsypF0CzVcIay9pPdjpZjZHP735yLfX512RtxYEdEGwi5r25Z2CEFaydhhxNwfuMxGBtLUjusix4="
156        use_notice: true
157        skip_join: true
158