blob: ed505603a2a1ec55b7016477379d61216744b951 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
|
job: &JOB
working_directory: ~/build
docker:
- image: jimmycuadra/rust:1.18.0
steps:
- checkout
- run: apt-get update
- run: apt-get install -y curl
- run: RUST_VERSION=1.18.0 ./test/add_target.sh
- restore_cache:
key: registry
- run: cargo generate-lockfile
- save_cache:
key: registry-{{ epoch }}
paths:
- ~/.cargo/registry/index
- run: echo "${LIBRARY}-${VERSION}-${TARGET}" > ~/lib_key
- restore_cache:
key: lib-{{ checksum "~/lib_key" }}-{{ checksum "test/build_openssl.sh"}}
- run: ./test/build_openssl.sh
- save_cache:
key: lib-{{ checksum "~/lib_key" }}-{{ checksum "test/build_openssl.sh"}}
paths:
- ~/openssl
- restore_cache:
key: deps-1.18.0-{{ checksum "Cargo.lock" }}-{{ checksum "~/lib_key" }}
- run: |
export OPENSSL_DIR=$HOME/openssl
case "${NO_RUN}" in
"1") CMD=build;;
"") CMD=run;;
esac
cargo $CMD --manifest-path=systest/Cargo.toml --target $TARGET
- run: |
export OPENSSL_DIR=$HOME/openssl
export PATH=$OPENSSL_DIR/bin:$PATH
if [ "${NO_RUN}" = "1" ]; then
TEST_ARGS=--no-run
fi
cargo test \
--manifest-path=openssl/Cargo.toml \
--target $TARGET \
--all-features \
$TEST_ARGS
- save_cache:
key: deps-1.18.0-{{ checksum "Cargo.lock" }}-{{ checksum "~/lib_key" }}
paths:
- target
- ~/.cargo/registry/cache
openssl_110: &OPENSSL_110
LIBRARY: openssl
VERSION: 1.1.0f
openssl_102: &OPENSSL_102
LIBRARY: openssl
VERSION: 1.0.2l
openssl_101: &OPENSSL_101
LIBRARY: openssl
VERSION: 1.0.1u
libressl_250: &LIBRESSL_250
LIBRARY: libressl
VERSION: 2.5.0
libressl_260: &LIBRESSL_260
LIBRARY: libressl
VERSION: 2.6.0
x86_64: &X86_64
TARGET: x86_64-unknown-linux-gnu
i686: &I686
TARGET: i686-unknown-linux-gnu
armhf: &ARMHF
TARGET: arm-unknown-linux-gnueabihf
NO_RUN: 1
CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABIHF_LINKER: arm-linux-gnueabihf-gcc
CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABIHF_AR: arm-linux-gnueabihf-ar
version: 2
jobs:
x86_64-openssl-1.1.0:
<<: *JOB
environment:
<<: [*OPENSSL_110, *X86_64]
x86_64-openssl-1.0.2:
<<: *JOB
environment:
<<: [*OPENSSL_102, *X86_64]
x86_64-openssl-1.0.1:
<<: *JOB
environment:
<<: [*OPENSSL_101, *X86_64]
i686-openssl-1.1.0:
<<: *JOB
environment:
<<: [*OPENSSL_110, *I686]
i686-openssl-1.0.2:
<<: *JOB
environment:
<<: [*OPENSSL_102, *I686]
i686-openssl-1.0.1:
<<: *JOB
environment:
<<: [*OPENSSL_101, *I686]
armhf-openssl-1.1.0:
<<: *JOB
environment:
<<: [*OPENSSL_110, *ARMHF]
armhf-openssl-1.0.2:
<<: *JOB
environment:
<<: [*OPENSSL_102, *ARMHF]
armhf-openssl-1.0.1:
<<: *JOB
environment:
<<: [*OPENSSL_101, *ARMHF]
x86_64-libressl-2.5.0:
<<: *JOB
environment:
<<: [*LIBRESSL_250, *X86_64]
x86_64-libressl-2.6.0:
<<: *JOB
environment:
<<: [*LIBRESSL_260, *X86_64]
workflows:
version: 2
tests:
jobs:
- x86_64-openssl-1.1.0
- x86_64-openssl-1.0.2
- x86_64-openssl-1.0.1
- i686-openssl-1.1.0
- i686-openssl-1.0.2
- i686-openssl-1.0.1
- armhf-openssl-1.1.0
- armhf-openssl-1.0.2
- armhf-openssl-1.0.1
- x86_64-libressl-2.5.0
- x86_64-libressl-2.6.0
|