Skip to content

Commit 4d99236

Browse files
authored
Merge pull request #2076 from mulkieran/develop-2.0.1-rc
Develop 2.0.1 rc
2 parents 8741825 + 635271d commit 4d99236

File tree

144 files changed

+9939
-2959
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

144 files changed

+9939
-2959
lines changed

.travis.yml

Lines changed: 163 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -1,109 +1,183 @@
1+
---
12
os: linux
2-
group: edge
3+
# use most recent available distro to support installation of crypsetup 2.2.0
4+
# or above with as little fuss as possible.
5+
dist: bionic
36

47
addons:
5-
apt:
6-
packages:
7-
- libdbus-1-dev
8-
- libudev-dev
9-
- libdbus-glib-1-dev
8+
apt:
9+
packages:
10+
- libdbus-1-dev
11+
- libudev-dev
12+
- libdbus-glib-1-dev
1013

1114
language: rust
1215

13-
matrix:
14-
fast_finish: true
15-
allow_failures:
16-
# Allow audit task to fail
17-
- env: TASK=audit
18-
include:
16+
# Use a package which supplies cryptsetup 2.3.0 which is required
17+
# by features added in libcryptsetup-rs that are used in stratisd.
18+
before_install:
19+
- >
20+
sudo
21+
add-apt-repository
22+
-y
23+
"deb http://us.archive.ubuntu.com/ubuntu/ eoan main"
24+
- sudo apt-get -q update
25+
# Update to a more recent version of blkid
26+
- sudo apt-get -y install util-linux libblkid-dev
27+
# cryptsetup-bin conflicts with custom built cryptsetup
28+
- sudo apt-get remove cryptsetup-bin
29+
- sudo apt-get install -y libargon2-0 libjson-c3
30+
- >
31+
wget
32+
"https://github.com/jbaublitz/stratisd/raw/deb/cryptsetup_2.3.0-1_amd64.deb"
33+
- sudo dpkg -i ./cryptsetup_2.3.0-1_amd64.deb
34+
# Linking fails if libcryptsetup 2.2 is present - must force
35+
# remove due to system dependencies
36+
- sudo dpkg --purge --force-all libcryptsetup12
1937

20-
# MANDATORY CHECKS USING CURRENT DEVELOPMENT COMPILER
21-
- name: "format Rust source using current development toolchain"
22-
rust: 1.40.0
23-
before_script:
24-
- rustup component add rustfmt
25-
env: TASK=fmt-travis
26-
- name: "lint Rust source using current development toolchain"
27-
rust: 1.40.0
28-
before_script:
29-
- rustup component add clippy
30-
env: TASK=clippy
38+
jobs:
39+
fast_finish: true
40+
allow_failures:
41+
# Allow audit task to fail
42+
- env: TASK=audit
43+
include:
3144

32-
# MANDATORY TESTING USING LOWEST SUPPORTED COMPILER
33-
- name: "run Rust unit tests on lowest supported toolchain"
34-
rust: 1.39.0
35-
env: TASK=test
36-
- name: "build release on lowest supported toolchain"
37-
rust: 1.39.0
38-
env: TASK=release
45+
# MANDATORY CHECKS USING CURRENT DEVELOPMENT COMPILER
46+
- name: "format Rust source using current development toolchain"
47+
rust: 1.43.0
48+
before_script:
49+
- rustup component add rustfmt
50+
env: TASK=fmt-travis
51+
- name: "lint Rust source using current development toolchain"
52+
rust: 1.43.0
53+
before_script:
54+
- rustup component add clippy
55+
env: TASK=clippy
3956

57+
# MANDATORY TESTING ON STABLE
58+
- name: "build using stable toolchain"
59+
rust: stable
60+
env: TASK=build
61+
- name: "build without defaults using stable toolchain"
62+
rust: stable
63+
env: TASK=build-no-default
64+
- name: "build Rust docs using stable toolchain"
65+
rust: stable
66+
env: TASK=docs-travis
67+
- name: "run Rust unit tests using stable toolchain"
68+
rust: stable
69+
env: TASK=test
70+
- name: "run Rust destructive unit tests using stable toolchain"
71+
rust: stable
72+
script:
73+
- >
74+
sudo
75+
PATH=${TRAVIS_HOME}/.cargo/bin:$PATH RUST_LOG=libstratis=info
76+
make
77+
-f
78+
Makefile
79+
test-travis
80+
- name: "build release using stable toolchain"
81+
rust: stable
82+
env: TASK=release
4083

41-
# MANDATORY TESTING ON STABLE
42-
- name: "build using stable toolchain"
43-
rust: stable
44-
env: TASK=build
45-
- name: "build without defaults using stable toolchain"
46-
rust: stable
47-
env: TASK=build-no-default
48-
- name: "build Rust source and tests on a 32-bit system using stable toolchain"
49-
rust: stable
50-
env: TASK=build-tests TARGET=i686-unknown-linux-gnu PKG_CONFIG_ALLOW_CROSS=1 PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig/
51-
install:
52-
- rustup target add $TARGET
53-
- sudo dpkg --add-architecture i386
54-
- sudo apt-get update
55-
- sudo apt-get install -y gcc-multilib libdbus-1-dev:i386 libdbus-glib-1-dev:i386 libglib2.0-dev:i386 libudev-dev:i386
56-
- name: "build Rust docs using stable toolchain"
57-
rust: stable
58-
env: TASK=docs-travis
59-
- name: "run Rust unit tests using stable toolchain"
60-
rust: stable
61-
env: TASK=test
62-
- name: "run Rust destructive unit tests using stable toolchain"
63-
rust: stable
64-
sudo: required
65-
script: sudo PATH=${TRAVIS_HOME}/.cargo/bin:$PATH make -f Makefile test-travis
66-
- name: "build release using stable toolchain"
67-
rust: stable
68-
env: TASK=release
6984

85+
# MANDATORY PYTHON CHECKS ON RECOMMENDED DEVELOPMENT INTERPRETER
86+
- name: "lint Python code on recommended development interpreter"
87+
language: python
88+
python: "3.7.6"
89+
install:
90+
- >
91+
pip
92+
install
93+
pylint==2.3.1
94+
dbus-client-gen==0.4
95+
dbus-python-client-gen==0.7
96+
psutil==5.4.3
97+
pyudev==0.22.0
98+
script:
99+
- >
100+
(cd scripts; make -f Makefile lint);
101+
(cd tests/client-dbus; PYTHONPATH=./src make -f Makefile lint)
102+
- name: "format Python code on recommended development interpreter"
103+
language: python
104+
python: "3.7.6"
105+
install: pip install black==19.3b0 isort==4.3.4
106+
script:
107+
- >
108+
(cd scripts; make fmt-travis);
109+
(cd tests/client-dbus; make fmt-travis)
70110
71-
# MANDATORY PYTHON CHECKS ON RECOMMENDED DEVELOPMENT INTERPRETER
72-
- name: "lint Python test code on recommended development interpreter"
73-
language: python
74-
python: "3.7.6"
75-
install: pip install pylint==2.3.1 dbus-client-gen==0.4 dbus-python-client-gen==0.7 psutil==5.4.3 pyudev==0.21.0
76-
before_script:
77-
- cd tests/client-dbus
78-
script: PYTHONPATH=./src make -f Makefile lint
79-
- name: "format Python test code on recommended development interpreter"
80-
language: python
81-
python: "3.7.6"
82-
install: pip install black==19.3b0 isort==4.3.4
83-
before_script:
84-
- cd tests/client-dbus
85-
env: TASK=fmt-travis
111+
# MANDATORY PYTHON CHECKS ON FUTURE SUPPORTED INTERPRETER
112+
- name: "lint Python code on future supported interpreter"
113+
language: python
114+
python: "3.7.7"
115+
install:
116+
- >
117+
pip
118+
install
119+
pylint==2.4.4
120+
dbus-client-gen==0.4
121+
dbus-python-client-gen==0.7
122+
psutil==5.6.7
123+
pyudev==0.22.0
124+
script:
125+
- >
126+
(cd scripts; make -f Makefile lint);
127+
(cd tests/client-dbus; PYTHONPATH=./src make -f Makefile lint)
128+
- name: "format Python code on future development interpreter"
129+
language: python
130+
python: "3.7.7"
131+
install: pip install black==19.10b0 isort==4.3.21
132+
script:
133+
- >
134+
(cd scripts; make fmt-travis);
135+
(cd tests/client-dbus; make fmt-travis)
86136
137+
# MANDATORY PYTHON CHECKS ON LOWEST SUPPORTED INTERPRETER
138+
- name: "lint Python code on lowest supported interpreter"
139+
language: python
140+
python: "3.6.8"
141+
install:
142+
- >
143+
pip
144+
install
145+
pylint==2.3.1
146+
dbus-client-gen==0.4
147+
dbus-python-client-gen==0.7
148+
psutil==5.4.3
149+
pyudev==0.22.0
150+
script:
151+
- >
152+
(cd scripts; make -f Makefile lint);
153+
(cd tests/client-dbus; PYTHONPATH=./src make -f Makefile lint)
87154
88-
# INTERMITTENTLY ALLOWED FAILURES
89-
# Allowed if a failure occurs after a new Rust release until the
90-
# failure is addressed.
91-
- name: "lint Rust source using beta toolchain"
92-
rust: beta
93-
before_script:
94-
- rustup component add clippy
95-
env: TASK=clippy
155+
# VERIFICATION OF TEST INFRASTRUCTURE
156+
- name: "run yamllint 1.20.0 on .travis.yml"
157+
language: python
158+
python: "3.7.6"
159+
install: pip install yamllint==1.20.0
160+
env: TASK=yamllint
96161

162+
# INTERMITTENTLY ALLOWED FAILURES
163+
# Allowed if a failure occurs after a new Rust release until the
164+
# failure is addressed.
165+
- name: "lint Rust source using beta toolchain"
166+
rust: beta
167+
before_script:
168+
- rustup component add clippy
169+
env: TASK=clippy
97170

98-
# ALLOWED FAILURES
99-
# Run audit on Rust stable. Make it an allowed failure, because:
100-
# * It takes 9 minutes, the longest of any task.
101-
# * It should be an advisory, and should not gate our development.
102-
- name: "run Rust audit task using stable toolchain"
103-
rust: stable
104-
env: TASK=audit
171+
# ALLOWED FAILURES
172+
# Run audit on Rust stable. Make it an allowed failure, because:
173+
# * It takes 9 minutes, the longest of any task.
174+
# * It should be an advisory, and should not gate our development.
175+
- name: "run Rust audit task using stable toolchain"
176+
rust: stable
177+
env: TASK=audit
105178

106179
branches:
107-
only: master
180+
only:
181+
- master
108182

109183
script: make -f Makefile $TASK

0 commit comments

Comments
 (0)