diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml new file mode 100644 index 0000000..6f09a5d --- /dev/null +++ b/.github/workflows/CI.yml @@ -0,0 +1,30 @@ +name: CI +on: [push, pull_request] + +jobs: + style: + name: Check Style + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - name: Install Rustfmt + run: rustup component add rustfmt + - name: Check formatting + run: cargo fmt --all -- --check + + test: + name: Test + needs: [style] + runs-on: ubuntu-latest + strategy: + matrix: + rust: + - stable + - beta + - nightly + steps: + - uses: actions/checkout@master + - name: Install Rust + run: rustup update ${{ matrix.rust }} && rustup default ${{ matrix.rust }} + - name: Run tests + run: cargo test diff --git a/azure-pipelines.yml b/azure-pipelines.yml deleted file mode 100644 index 951551c..0000000 --- a/azure-pipelines.yml +++ /dev/null @@ -1,13 +0,0 @@ -trigger: ["master"] -pr: ["master"] - -jobs: -# Check formatting -- job: rustfmt - pool: - vmImage: ubuntu-16.04 - steps: - - template: ci/azure-rustfmt.yml - -# Run tests -- template: ci/azure-test-all.yml diff --git a/ci/azure-install-rust.yml b/ci/azure-install-rust.yml deleted file mode 100644 index 3ebe5b2..0000000 --- a/ci/azure-install-rust.yml +++ /dev/null @@ -1,25 +0,0 @@ -steps: - # Linux and macOS. - - script: | - set -e - curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain $RUSTUP_TOOLCHAIN - echo "##vso[task.setvariable variable=PATH;]$PATH:$HOME/.cargo/bin" - env: - RUSTUP_TOOLCHAIN: ${{parameters.rust_version}} - displayName: "Install rust (*nix)" - condition: not(eq(variables['Agent.OS'], 'Windows_NT')) - # Windows. - - script: | - curl -sSf -o rustup-init.exe https://win.rustup.rs - rustup-init.exe -y --default-toolchain %RUSTUP_TOOLCHAIN% - set PATH=%PATH%;%USERPROFILE%\.cargo\bin - echo "##vso[task.setvariable variable=PATH;]%PATH%;%USERPROFILE%\.cargo\bin" - env: - RUSTUP_TOOLCHAIN: ${{parameters.rust_version}} - displayName: "Install rust (windows)" - condition: eq(variables['Agent.OS'], 'Windows_NT') - # All platforms. - - script: | - rustc -Vv - cargo -V - displayName: Query rust and cargo versions diff --git a/ci/azure-rustfmt.yml b/ci/azure-rustfmt.yml deleted file mode 100644 index d253ddd..0000000 --- a/ci/azure-rustfmt.yml +++ /dev/null @@ -1,10 +0,0 @@ -steps: - - template: azure-install-rust.yml - parameters: - rust_version: stable - - bash: | - rustup component add rustfmt - displayName: Install rustfmt - - bash: | - cargo fmt --all -- --check - displayName: Check formatting diff --git a/ci/azure-test-all.yml b/ci/azure-test-all.yml deleted file mode 100644 index 1217054..0000000 --- a/ci/azure-test-all.yml +++ /dev/null @@ -1,19 +0,0 @@ -jobs: -- job: cargo_test_all - displayName: cargo test - pool: - vmImage: ubuntu-16.04 - strategy: - matrix: - stable: - rust_version: stable - beta: - rust_version: beta - nightly: - rust_version: nightly - steps: - - template: azure-install-rust.yml - parameters: - rust_version: $(rust_version) - - script: cargo test - displayName: cargo test