fregate 0.17.1

Framework for services creation
Documentation
on:
  pull_request:
    branches: [ "main" ]

jobs:
  fmt:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          components: rustfmt
      - uses: arduino/setup-protoc@v1
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
      - uses: actions-rs/cargo@v1
        with:
          command: fmt
          args: --all -- --check

  build-features:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
      - uses: arduino/setup-protoc@v1
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}

      - name: tokio-metrics
        run: cargo build --features tokio-metrics

      - name: reqwest
        run: cargo build --features reqwest

      - name: use_native_tls
        run: cargo build --features use_native_tls

      - name: use_rustls
        run: cargo build --features use_rustls

  clippy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          components: clippy
      - uses: arduino/setup-protoc@v1
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
      - uses: actions-rs/cargo@v1
        with:
          command: clippy
          args: --all -- -D warnings

  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: arduino/setup-protoc@v1
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
      - uses: actions-rs/cargo@v1
        with:
          command: test
          args: #--features native-tls

  test-native-tls:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: arduino/setup-protoc@v1
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
      - uses: actions-rs/cargo@v1
        with:
          command: test
          args: --features use_native_tls -- --ignored

  test-rustls:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: arduino/setup-protoc@v1
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
      - uses: actions-rs/cargo@v1
        with:
          command: test
          args: --features use_rustls -- --ignored