|
1 | 1 | name: CI
|
2 |
| -on: [push, pull_request] |
| 2 | +on: |
| 3 | + push: |
| 4 | + branches: [master, release/111] |
| 5 | + pull_request: |
| 6 | + branches: [master, release/111] |
| 7 | + |
| 8 | +defaults: |
| 9 | + run: |
| 10 | + shell: bash |
3 | 11 |
|
4 | 12 | jobs:
|
5 | 13 | test:
|
6 | 14 | name: Test
|
7 | 15 | runs-on: ${{ matrix.os }}
|
8 | 16 | strategy:
|
| 17 | + fail-fast: false |
9 | 18 | matrix:
|
10 |
| - thing: |
11 |
| - - stable |
12 |
| - - beta |
13 |
| - - nightly |
14 |
| - - macos-x86_64 |
15 |
| - - arm-android |
16 |
| - - arm64-android |
17 |
| - - i686-android |
18 |
| - - x86_64-android |
19 |
| - - i686-linux |
20 |
| - - arm-linux |
21 |
| - - aarch64-linux |
22 |
| - - x86_64-musl |
23 |
| - - x86_64-mingw |
24 |
| - - asmjs |
25 |
| - - i686-msvc |
26 |
| - - i686-msvc-static |
27 |
| - - x86_64-msvc |
28 |
| - - x86_64-msvc-static |
29 | 19 | include:
|
30 |
| - - thing: stable |
31 |
| - target: x86_64-unknown-linux-gnu |
| 20 | + - target: x86_64-unknown-linux-gnu |
32 | 21 | rust: stable
|
33 | 22 | os: ubuntu-latest
|
34 |
| - - thing: beta |
35 |
| - target: x86_64-unknown-linux-gnu |
| 23 | + - target: x86_64-unknown-linux-gnu |
36 | 24 | rust: beta
|
37 | 25 | os: ubuntu-latest
|
38 |
| - - thing: nightly |
39 |
| - target: x86_64-unknown-linux-gnu |
| 26 | + - target: x86_64-unknown-linux-gnu |
40 | 27 | rust: nightly
|
41 | 28 | os: ubuntu-latest
|
42 |
| - - thing: macos-x86_64 |
43 |
| - target: x86_64-apple-darwin |
| 29 | + - target: x86_64-apple-darwin |
44 | 30 | rust: stable
|
45 | 31 | os: macos-latest
|
46 |
| - - thing: arm-android |
47 |
| - target: arm-linux-androideabi |
48 |
| - rust: stable |
49 |
| - os: ubuntu-latest |
50 |
| - - thing: arm64-android |
51 |
| - target: aarch64-linux-android |
52 |
| - rust: stable |
53 |
| - os: ubuntu-latest |
54 |
| - - thing: i686-android |
55 |
| - target: i686-linux-android |
| 32 | + - target: aarch64-apple-darwin |
| 33 | + rust: nightly |
| 34 | + os: macos-latest |
| 35 | + #- target: arm-linux-androideabi |
| 36 | + # rust: stable |
| 37 | + # os: ubuntu-latest |
| 38 | + - target: aarch64-linux-android |
56 | 39 | rust: stable
|
57 | 40 | os: ubuntu-latest
|
58 |
| - - thing: x86_64-android |
59 |
| - target: x86_64-linux-android |
| 41 | + - target: i686-linux-android |
60 | 42 | rust: stable
|
61 | 43 | os: ubuntu-latest
|
62 |
| - - thing: i686-linux |
63 |
| - target: i686-unknown-linux-gnu |
| 44 | + - target: x86_64-linux-android |
64 | 45 | rust: stable
|
65 | 46 | os: ubuntu-latest
|
66 |
| - - thing: arm-linux |
67 |
| - target: arm-unknown-linux-gnueabi |
| 47 | + - target: i686-unknown-linux-gnu |
68 | 48 | rust: stable
|
69 | 49 | os: ubuntu-latest
|
70 |
| - - thing: aarch64-linux |
71 |
| - target: aarch64-unknown-linux-gnu |
| 50 | + - target: arm-unknown-linux-gnueabi |
72 | 51 | rust: stable
|
73 | 52 | os: ubuntu-latest
|
74 |
| - - thing: x86_64-musl |
75 |
| - target: x86_64-unknown-linux-musl |
| 53 | + - target: aarch64-unknown-linux-gnu |
76 | 54 | rust: stable
|
77 | 55 | os: ubuntu-latest
|
78 |
| - - thing: x86_64-mingw |
79 |
| - target: x86_64-pc-windows-gnu |
| 56 | + - target: x86_64-unknown-linux-musl |
80 | 57 | rust: stable
|
81 | 58 | os: ubuntu-latest
|
82 |
| - - thing: asmjs |
83 |
| - target: asmjs-unknown-emscripten |
| 59 | + - target: x86_64-pc-windows-gnu |
84 | 60 | rust: stable
|
85 | 61 | os: ubuntu-latest
|
86 |
| - - thing: i686-msvc |
87 |
| - target: i686-pc-windows-msvc |
| 62 | + # - target: asmjs-unknown-emscripten |
| 63 | + # rust: stable |
| 64 | + # os: ubuntu-latest |
| 65 | + - target: i686-pc-windows-msvc |
88 | 66 | rust: stable-i686-msvc
|
89 |
| - os: windows-2016 |
90 |
| - - thing: i686-msvc-static |
91 |
| - target: i686-pc-windows-msvc |
| 67 | + os: windows-2019 |
| 68 | + - target: i686-pc-windows-msvc |
92 | 69 | rust: stable-i686-msvc
|
93 |
| - os: windows-2016 |
94 |
| - crt_static: true |
95 |
| - - thing: x86_64-msvc |
96 |
| - target: x86_64-pc-windows-msvc |
| 70 | + os: windows-2019 |
| 71 | + crt_static: yes |
| 72 | + - target: x86_64-pc-windows-msvc |
97 | 73 | rust: stable-x86_64-msvc
|
98 | 74 | os: windows-latest
|
99 |
| - - thing: x86_64-msvc-static |
100 |
| - target: x86_64-pc-windows-msvc |
| 75 | + - target: x86_64-pc-windows-msvc |
101 | 76 | rust: stable-x86_64-msvc
|
102 | 77 | os: windows-latest
|
103 |
| - crt_static: true |
| 78 | + crt_static: yes |
| 79 | + - target: x86_64-pc-windows-msvc |
| 80 | + rust: stable-x86_64-msvc |
| 81 | + os: windows-latest |
| 82 | + nasm_exe: installed |
104 | 83 |
|
105 | 84 | steps:
|
106 |
| - - uses: actions/checkout@master |
| 85 | + - uses: actions/checkout@v1 |
107 | 86 | with:
|
108 | 87 | submodules: true
|
109 | 88 | - name: Install Rust (rustup)
|
110 | 89 | run: rustup update ${{ matrix.rust }} --no-self-update && rustup default ${{ matrix.rust }}
|
111 |
| - if: matrix.os != 'macos-latest' |
112 |
| - shell: bash |
113 |
| - - name: Install Rust (macos) |
114 |
| - run: | |
115 |
| - curl https://sh.rustup.rs | sh -s -- -y |
116 |
| - echo ::add-path::$HOME/.cargo/bin |
117 |
| - if: matrix.os == 'macos-latest' |
118 | 90 | - run: rustup target add ${{ matrix.target }}
|
119 | 91 | - name: Set crt-static
|
120 | 92 | if: matrix.crt_static == 'yes'
|
121 |
| - run: echo ::set-env name=RUSTFLAGS::-Ctarget-feature=+crt-static |
122 |
| - shell: bash |
| 93 | + run: echo RUSTFLAGS=-Ctarget-feature=+crt-static >> $GITHUB_ENV |
123 | 94 | - name: Use strawberry perl
|
124 | 95 | if: startsWith(matrix.os, 'windows')
|
125 |
| - run: echo ::add-path::C:/Strawberry/perl/bin |
126 |
| - shell: bash |
127 |
| - - run: | |
| 96 | + run: echo OPENSSL_SRC_PERL=C:/Strawberry/perl/bin/perl >> $GITHUB_ENV |
| 97 | + - name: Run tests (not Windows) |
| 98 | + if: "!startsWith(matrix.os, 'windows')" |
| 99 | + run: | |
128 | 100 | set -e
|
129 | 101 | cargo generate-lockfile
|
130 | 102 | ./ci/run-docker.sh ${{ matrix.target }}
|
131 |
| - if: "!startsWith(matrix.os, 'windows')" |
132 |
| - name: Run tests (not Windows) |
133 |
| - - run: | |
134 |
| - cargo test --manifest-path testcrate/Cargo.toml --target ${{ matrix.target }} |
135 |
| - cargo test --manifest-path testcrate/Cargo.toml --target ${{ matrix.target }} --release |
136 |
| - cargo run --release --target ${{ matrix.target }} --manifest-path testcrate/Cargo.toml --features package |
| 103 | + - name: Download nasm.exe (Windows) |
| 104 | + if: matrix.nasm_exe == 'installed' |
| 105 | + run: | |
| 106 | + WINNASMVERSION='2.15.05' |
| 107 | + curl -O https://www.nasm.us/pub/nasm/releasebuilds/${WINNASMVERSION}/win64/nasm-${WINNASMVERSION}-win64.zip |
| 108 | + unzip nasm-${WINNASMVERSION}-win64.zip |
| 109 | + echo "$GITHUB_WORKSPACE\\nasm-${WINNASMVERSION}" >> $GITHUB_PATH |
| 110 | + echo "OPENSSL_RUST_USE_NASM=1" >> $GITHUB_ENV |
| 111 | + - name: Run tests (Windows) |
137 | 112 | if: startsWith(matrix.os, 'windows')
|
138 |
| - name: Run tests (Windows) |
139 |
| - shell: cmd |
| 113 | + run: | |
| 114 | + cargo test --manifest-path testcrate/Cargo.toml --target ${{ matrix.target }} -vv |
| 115 | + cargo test --manifest-path testcrate/Cargo.toml --target ${{ matrix.target }} --release -vv |
| 116 | + cargo run --release --target ${{ matrix.target }} --manifest-path testcrate/Cargo.toml --features package -vv |
140 | 117 |
|
141 | 118 | rustfmt:
|
142 | 119 | name: Rustfmt
|
143 | 120 | runs-on: ubuntu-latest
|
144 | 121 | steps:
|
145 |
| - - uses: actions/checkout@master |
| 122 | + - uses: actions/checkout@v1 |
146 | 123 | - name: Install Rust
|
147 | 124 | run: rustup update stable && rustup default stable && rustup component add rustfmt
|
148 | 125 | - run: cargo fmt -- --check
|
0 commit comments