mirror of
https://github.com/clap-rs/clap
synced 2024-12-13 22:32:33 +00:00
dfbeb71077
We are concerned about the level of polish of this feature and are unsure enough about its future, we've decided to gate it to unblock the v3 release.
175 lines
5.2 KiB
YAML
175 lines
5.2 KiB
YAML
name: CI
|
|
on:
|
|
push:
|
|
branches: [master, staging, trying]
|
|
jobs:
|
|
ci:
|
|
name: CI
|
|
needs: [test, wasm]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Done
|
|
run: exit 0
|
|
test:
|
|
name: Tests
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
rust: [1.54.0, stable, beta]
|
|
os: [windows-latest, macos-latest, ubuntu-latest]
|
|
target:
|
|
- i686-pc-windows-msvc
|
|
- x86_64-pc-windows-msvc
|
|
- i686-pc-windows-gnu
|
|
- x86_64-pc-windows-gnu
|
|
- x86_64-unknown-linux-gnu
|
|
- i686-unknown-linux-gnu
|
|
- x86_64-apple-darwin
|
|
features:
|
|
- none
|
|
- all
|
|
- release
|
|
exclude:
|
|
- features: release
|
|
rust: stable
|
|
- features: release
|
|
rust: beta
|
|
- os: windows-latest
|
|
target: x86_64-apple-darwin
|
|
- os: windows-latest
|
|
target: x86_64-unknown-linux-gnu
|
|
- os: windows-latest
|
|
target: i686-unknown-linux-gnu
|
|
- os: macos-latest
|
|
target: i686-pc-windows-msvc
|
|
- os: macos-latest
|
|
target: x86_64-pc-windows-msvc
|
|
- os: macos-latest
|
|
target: i686-pc-windows-gnu
|
|
- os: macos-latest
|
|
target: x86_64-pc-windows-gnu
|
|
- os: macos-latest
|
|
target: x86_64-unknown-linux-gnu
|
|
- os: macos-latest
|
|
target: i686-unknown-linux-gnu
|
|
- os: ubuntu-latest
|
|
target: i686-pc-windows-msvc
|
|
- os: ubuntu-latest
|
|
target: x86_64-pc-windows-msvc
|
|
- os: ubuntu-latest
|
|
target: i686-pc-windows-gnu
|
|
- os: ubuntu-latest
|
|
target: x86_64-pc-windows-gnu
|
|
- os: ubuntu-latest
|
|
target: x86_64-apple-darwin
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- name: Install rust
|
|
uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: ${{ matrix.rust }}
|
|
target: ${{ matrix.target }}
|
|
override: true
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
- name: Install linker
|
|
if: matrix.target == 'i686-pc-windows-gnu'
|
|
uses: egor-tensin/setup-mingw@v2
|
|
with:
|
|
platform: x86
|
|
- name: Install linker
|
|
if: matrix.target == 'x86_64-pc-windows-gnu'
|
|
uses: egor-tensin/setup-mingw@v2
|
|
- name: Install linker
|
|
if: matrix.target == 'i686-unknown-linux-gnu'
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install gcc-multilib
|
|
- name: Test almost no features
|
|
uses: actions-rs/cargo@v1
|
|
if: matrix.features == 'none'
|
|
with:
|
|
command: test
|
|
args: --target ${{ matrix.target }} --no-default-features --features "std cargo" -p clap:3.0.0-beta.4
|
|
- name: Test all features
|
|
uses: actions-rs/cargo@v1
|
|
if: matrix.features == 'all'
|
|
with:
|
|
command: test
|
|
args: --target ${{ matrix.target }} --features "wrap_help yaml regex unstable-replace"
|
|
- name: Check debug
|
|
uses: actions-rs/cargo@v1
|
|
if: matrix.features == 'all'
|
|
with:
|
|
command: check
|
|
args: --target ${{ matrix.target }} --features "wrap_help yaml regex unstable-replace debug"
|
|
- name: Test release
|
|
uses: actions-rs/cargo@v1
|
|
if: matrix.features == 'release'
|
|
with:
|
|
command: test
|
|
args: --target ${{ matrix.target }} --features "wrap_help yaml regex" --release
|
|
nightly:
|
|
name: Nightly Tests
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
features:
|
|
- none
|
|
- all
|
|
- release
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Install rust
|
|
uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: nightly
|
|
override: true
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
- name: Test almost no features
|
|
uses: actions-rs/cargo@v1
|
|
if: matrix.features == 'none'
|
|
with:
|
|
command: test
|
|
args: --no-default-features --features "std cargo" -p clap:3.0.0-beta.4
|
|
- name: Test all features
|
|
uses: actions-rs/cargo@v1
|
|
if: matrix.features == 'all'
|
|
with:
|
|
command: test
|
|
args: --features "wrap_help yaml regex unstable-replace"
|
|
- name: Check debug
|
|
uses: actions-rs/cargo@v1
|
|
if: matrix.features == 'all'
|
|
with:
|
|
command: check
|
|
args: --features "wrap_help yaml regex unstable-replace debug"
|
|
- name: Test release
|
|
uses: actions-rs/cargo@v1
|
|
if: matrix.features == 'release'
|
|
with:
|
|
command: test
|
|
args: --features "wrap_help yaml regex" --release
|
|
wasm:
|
|
name: Wasm Check
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
target: [wasm32-unknown-unknown, wasm32-wasi]
|
|
steps:
|
|
- name: Install rust
|
|
uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: 1.54.0
|
|
target: ${{ matrix.target }}
|
|
override: true
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
- name: Check
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: check
|
|
args: --target ${{ matrix.target }} --features "yaml regex"
|