diff options
author | Diego Barrios Romero <eldruin@gmail.com> | 2020-12-01 08:18:35 +0100 |
---|---|---|
committer | Diego Barrios Romero <eldruin@gmail.com> | 2020-12-01 08:18:35 +0100 |
commit | 3d3cafc6609056e998e39352e86d19d8a6b08041 (patch) | |
tree | 3b14857aaff978538f636a397833993ee6d6df76 | |
parent | 2a0cd296790cd8c4b8e58c1dd8a24301a1a8e3f2 (diff) | |
download | ads1x1x-async-3d3cafc6609056e998e39352e86d19d8a6b08041.tar.gz ads1x1x-async-3d3cafc6609056e998e39352e86d19d8a6b08041.tar.xz ads1x1x-async-3d3cafc6609056e998e39352e86d19d8a6b08041.zip |
Use GitHub Actions instead of Travis for CI
-rw-r--r-- | .github/workflows/build.yml | 65 | ||||
-rw-r--r-- | .github/workflows/clippy.yml | 21 | ||||
-rw-r--r-- | .github/workflows/coverage.yml | 28 | ||||
-rw-r--r-- | .github/workflows/docs.yml | 24 | ||||
-rw-r--r-- | .github/workflows/rustfmt.yml | 19 | ||||
-rw-r--r-- | .github/workflows/test.yml | 56 | ||||
-rw-r--r-- | .travis.yml | 66 | ||||
-rw-r--r-- | Cargo.toml | 1 | ||||
-rw-r--r-- | README.md | 2 |
9 files changed, 214 insertions, 68 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..62a39be --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,65 @@ +on: + push: + pull_request: + schedule: + - cron: 0 0 * * 0 + +name: Build + +env: + RUSTFLAGS: '-D warnings' + +jobs: + ci-linux: + runs-on: ubuntu-latest + strategy: + matrix: + rust: [stable] + TARGET: + - x86_64-unknown-linux-gnu + - x86_64-unknown-linux-musl + - arm-unknown-linux-gnueabi # Raspberry Pi 1 + - armv7-unknown-linux-gnueabihf # Raspberry Pi 2, 3, etc + # Bare metal + - thumbv6m-none-eabi + - thumbv7em-none-eabi + - thumbv7em-none-eabihf + - thumbv7m-none-eabi + + include: + # Test MSRV + - rust: 1.31.0 + TARGET: x86_64-unknown-linux-gnu + + - rust: beta + TARGET: x86_64-unknown-linux-gnu + + # Test nightly but don't fail + - rust: nightly + experimental: true + TARGET: x86_64-unknown-linux-gnu + + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: ${{ matrix.rust }} + target: ${{ matrix.TARGET }} + override: true + + - name: Checkout CI scripts + uses: actions/checkout@v2 + with: + repository: 'eldruin/rust-driver-ci-scripts' + ref: 'master' + path: 'ci' + + - run: ./ci/patch-no-std.sh + if: ${{ ! contains(matrix.TARGET, 'x86_64') }} + + - name: Build + uses: actions-rs/cargo@v1 + with: + command: build + args: --target=${{ matrix.TARGET }} diff --git a/.github/workflows/clippy.yml b/.github/workflows/clippy.yml new file mode 100644 index 0000000..edf92fb --- /dev/null +++ b/.github/workflows/clippy.yml @@ -0,0 +1,21 @@ +on: [push, pull_request] + +name: Clippy check + +env: + RUSTFLAGS: '-D warnings' + +jobs: + clippy_check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + components: clippy + - uses: actions-rs/clippy-check@v1 + with: + token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml new file mode 100644 index 0000000..6e47780 --- /dev/null +++ b/.github/workflows/coverage.yml @@ -0,0 +1,28 @@ +on: [push] + +name: Coverage + +jobs: + check: + name: Coverage + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Install stable toolchain + uses: actions-rs/toolchain@v1 + with: + toolchain: stable + override: true + + - name: Run cargo-tarpaulin + uses: actions-rs/tarpaulin@v0.1 + with: + args: '--out Lcov -- --test-threads 1' + + - name: upload to Coveralls + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + path-to-lcov: './lcov.info' diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 0000000..dc2233b --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,24 @@ +on: + push: + pull_request: + schedule: + - cron: 0 0 * * 0 + +name: Build docs + +env: + RUSTFLAGS: '-D warnings' + +jobs: + docs: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + - uses: actions-rs/cargo@v1 + with: + command: doc diff --git a/.github/workflows/rustfmt.yml b/.github/workflows/rustfmt.yml new file mode 100644 index 0000000..824c299 --- /dev/null +++ b/.github/workflows/rustfmt.yml @@ -0,0 +1,19 @@ +on: [push, pull_request] + +name: Code formatting check + +jobs: + fmt: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + components: rustfmt + - uses: actions-rs/cargo@v1 + with: + command: fmt + args: --all -- --check diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..10b3f47 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,56 @@ +on: + push: + pull_request: + schedule: + - cron: 0 0 * * 0 + +name: Test + +env: + RUSTFLAGS: '-D warnings' + +jobs: + ci-linux: + runs-on: ubuntu-latest + strategy: + matrix: + rust: [stable] + TARGET: + - x86_64-unknown-linux-gnu + - x86_64-unknown-linux-musl + + include: + # Test MSRV + - rust: 1.31.0 + TARGET: x86_64-unknown-linux-gnu + + - rust: beta + TARGET: x86_64-unknown-linux-gnu + + # Test nightly but don't fail + - rust: nightly + experimental: true + TARGET: x86_64-unknown-linux-gnu + + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: ${{ matrix.rust }} + target: ${{ matrix.TARGET }} + override: true + + - name: Test + uses: actions-rs/cargo@v1 + if: contains(matrix.TARGET, 'x86_64') + with: + command: test + args: --target=${{ matrix.TARGET }} + + - name: Build examples + uses: actions-rs/cargo@v1 + if: contains(matrix.TARGET, 'x86_64') + with: + command: build + args: --target=${{ matrix.TARGET }} --examples diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 43df051..0000000 --- a/.travis.yml +++ /dev/null @@ -1,66 +0,0 @@ -language: rust - -env: - global: - - RUSTFLAGS="-D warnings" - -before_install: - - git clone https://github.com/eldruin/rust-driver-ci-scripts ci - - bash ci/before_install.sh - -matrix: - include: - - env: TARGET=x86_64-unknown-linux-gnu - before_script: - - bash ci/coverage_before_script.sh - after_success: - - bash ci/coverage_after_success.sh - addons: - apt: - packages: - - libcurl4-openssl-dev - - libelf-dev - - libdw-dev - - binutils-dev - - cmake - sources: - - kalakris-cmake - - - env: TARGET=x86_64-unknown-linux-gnu - rust: nightly - - - env: TARGET=x86_64-unknown-linux-musl - rust: beta - - # Minimum Supported Rust Version - - env: TARGET=thumbv7em-none-eabihf - rust: 1.31.0 - - # Raspberry Pi 1 - - env: TARGET=arm-unknown-linux-gnueabi DISABLE_EXAMPLES=1 DISABLE_TESTS=1 - - # Raspberry Pi 2, 3, etc - - env: TARGET=armv7-unknown-linux-gnueabihf DISABLE_EXAMPLES=1 DISABLE_TESTS=1 - - # Bare metal - - env: TARGET=thumbv6m-none-eabi - - env: TARGET=thumbv7em-none-eabi - - env: TARGET=thumbv7em-none-eabihf - - env: TARGET=thumbv7m-none-eabi - -install: - bash ci/install.sh - -script: - bash ci/script.sh - -after_script: set +e - -cache: cargo - -before_cache: - bash ci/before_cache.sh - -notifications: - email: - on_success: never @@ -21,7 +21,6 @@ include = [ edition = "2018" [badges] -travis-ci = { repository = "eldruin/ads1x1x-rs", branch = "master" } coveralls = { repository = "eldruin/ads1x1x-rs", branch = "master", service = "github" } [dependencies] @@ -2,7 +2,7 @@ [![crates.io](https://img.shields.io/crates/v/ads1x1x.svg)](https://crates.io/crates/ads1x1x) [![Docs](https://docs.rs/ads1x1x/badge.svg)](https://docs.rs/ads1x1x) -[![Build Status](https://travis-ci.org/eldruin/ads1x1x-rs.svg?branch=master)](https://travis-ci.org/eldruin/ads1x1x-rs) +[![Build Status](https://github.com/eldruin/ads1x1x-rs/workflows/Build/badge.svg)](https://github.com/eldruin/ads1x1x-rs/actions?query=workflow%3ABuild) [![Coverage Status](https://coveralls.io/repos/github/eldruin/ads1x1x-rs/badge.svg?branch=master)](https://coveralls.io/github/eldruin/ads1x1x-rs?branch=master) This is a platform agnostic Rust driver for the ADS1013, ADS1014, ADS1015, |