mirror of
https://github.com/BurntSushi/ripgrep.git
synced 2024-12-12 19:18:24 +02:00
8cb7271b64
Basically, matrix.os needs to be defined for every build. We were commenting out some of the builds in order to debug CI in the `include` section, but we also need to comment them out in the `build section.
102 lines
3.0 KiB
YAML
102 lines
3.0 KiB
YAML
name: ci
|
|
on:
|
|
pull_request:
|
|
push:
|
|
branches:
|
|
- master
|
|
schedule:
|
|
- cron: '00 01 * * *'
|
|
jobs:
|
|
test:
|
|
name: test
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
# The docs seem to suggest that we can have a matrix with just an
|
|
# include directive, but it result in a "matrix must define at least
|
|
# one vector" error in the CI system.
|
|
build:
|
|
# - pinned-glibc
|
|
- pinned-musl
|
|
- stable
|
|
# - beta
|
|
# We test musl with nightly because every once in a while, this will
|
|
# catch an upstream regression.
|
|
# - nightly-glibc
|
|
# - nightly-musl
|
|
# - macos
|
|
# - win-msvc-32
|
|
# - win-msvc-64
|
|
# - win-gnu-32
|
|
# - win-gnu-64
|
|
include:
|
|
# - build: pinned-glibc
|
|
# os: ubuntu-18.04
|
|
# rust: 1.34.0
|
|
# target: x86_64-unknown-linux-gnu
|
|
- build: pinned-musl
|
|
os: ubuntu-18.04
|
|
rust: 1.34.0
|
|
target: x86_64-unknown-linux-musl
|
|
- build: stable
|
|
os: ubuntu-18.04
|
|
rust: stable
|
|
target: x86_64-unknown-linux-gnu
|
|
# - build: beta
|
|
# os: ubuntu-18.04
|
|
# rust: beta
|
|
# target: x86_64-unknown-linux-gnu
|
|
# - build: nightly-glibc
|
|
# os: ubuntu-18.04
|
|
# rust: nightly
|
|
# target: x86_64-unknown-linux-gnu
|
|
# - build: nightly-musl
|
|
# os: ubuntu-18.04
|
|
# rust: nightly
|
|
# target: x86_64-unknown-linux-musl
|
|
# - build: macos
|
|
# os: macOS-10.14
|
|
# rust: stable
|
|
# target: x86_64-apple-darwin
|
|
# - build: win-msvc-32
|
|
# os: windows-2019
|
|
# rust: stable
|
|
# target: i686-pc-windows-msvc
|
|
# - build: win-msvc-64
|
|
# os: windows-2019
|
|
# rust: stable
|
|
# target: x86_64-pc-windows-msvc
|
|
# - build: win-gnu-32
|
|
# os: windows-2019
|
|
# rust: stable-i686-gnu
|
|
# target: i686-pc-windows-gnu
|
|
# - build: win-gnu-64
|
|
# os: windows-2019
|
|
# rust: stable-x86_64-gnu
|
|
# target: x86_64-pc-windows-gnu
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Install Rust
|
|
uses: hecrj/setup-rust-action@v1
|
|
with:
|
|
rust-version: ${{ matrix.rust }}
|
|
- name: Install Rust Target
|
|
run: rustup target add ${{ matrix.target }}
|
|
- name: Install musl-gcc
|
|
if: contains(matrix.target, 'musl')
|
|
run: |
|
|
sudo apt-get install musl-tools
|
|
- name: Build everything
|
|
run: cargo build --verbose --target ${{ matrix.target }} --all --features pcre2
|
|
- name: Install zsh
|
|
if: matrix.build == 'stable'
|
|
run: sudo apt-get install zsh
|
|
- name: Test zsh auto-completions
|
|
if: matrix.build == 'stable'
|
|
run: ./ci/test_complete.sh
|
|
- name: Run tests
|
|
run: cargo test --verbose --target ${{ matrix.target }} --all --features pcre2
|