https 1.13.1

Host These Things Please - a basic http server for hosting a folder fast and simply
sudo: false
language: generic
cache: cargo

matrix:
  include:
    - env: LANGUAGE=Rust DEPLOY=true DEPLOY_FILE="$TRAVIS_BUILD_DIR/../http-$TRAVIS_TAG"
      language: rust
      rust: stable
    - env: LANGUAGE=Rust
      language: rust
      rust: beta
    - env: LANGUAGE=Rust CLIPPY=true
      language: rust
      rust: nightly
    - env: LANGUAGE=Rust-deb DEPLOY=true DEPLOY_FILE="$TRAVIS_BUILD_DIR/target/debian"
      language: rust
      rust: stable
    - env: LANGUAGE=Ruby DEPLOY=true DEPLOY_FILE="$TRAVIS_BUILD_DIR/../http-man-$TRAVIS_TAG.tbz2"
      language: ruby
      rust: []
      rvm: "2.2"
  allow_failures:
    - rust: beta
    - rust: nightly

install:
  - if [ "$LANGUAGE" == "Ruby" ]; then gem install ronn; fi
  - if [ "$LANGUAGE" == "Rust-deb" ]; then
      export DEPLOY_FILE="$DEPLOY_FILE/http_$(awk '/version/ {print(gensub(/"/, "", "g", $3)); exit}' Cargo.toml)_amd64.deb";
      cargo install cargo-deb || :;
    fi

script:
  - if [ "$LANGUAGE" == "Rust" ]; then cargo build --verbose; fi
  - if [ "$LANGUAGE" == "Rust" ]; then cargo test  --verbose; fi
  -
  - if [ "$LANGUAGE" == "Rust" ] && [ "$DEPLOY" ] && [ "$TRAVIS_TAG" ]; then cargo build --verbose --release; fi
  - if [ "$LANGUAGE" == "Rust" ] && [ "$CLIPPY" ]; then
      rustup component add clippy-preview || cargo install --git https://github.com/rust-lang/rust-clippy clippy -f;
      cargo clippy;
    fi
  -
  - if [ "$LANGUAGE" == "Rust-deb" ]; then cargo deb; fi
  -
  - if [ "$LANGUAGE" == "Ruby" ]; then
      mkdir man; pushd man;
      cp ../http.md .;
      ronn --organization="http developers" http.md;
      popd;
    fi

after_success:
  - if [ "$LANGUAGE" == "Rust" ] && [ "$DEPLOY" ] && [ "$TRAVIS_TAG" ]; then
      cp target/release/http "$DEPLOY_FILE";
      strip --strip-all --remove-section=.comment --remove-section=.note "$DEPLOY_FILE";
    fi
  - if [ "$LANGUAGE" == "Ruby" ] && [ "$DEPLOY" ] && [ "$TRAVIS_TAG" ]; then
      cp -r man "$TRAVIS_BUILD_DIR/../http-man-$TRAVIS_TAG";
      pushd "$TRAVIS_BUILD_DIR/..";
      tar -caf "http-man-$TRAVIS_TAG.tbz2" "http-man-$TRAVIS_TAG";
      rm -rf "http-man-$TRAVIS_TAG";
      popd;
    fi

deploy:
  provider: releases
  api_key:
    secure: "k2Y6coPaGjjGie7UmbTkh2Vms7PVr8PIfVP0+0iuuACyZJaSzfaJmLW4crYgEPpifydVSlf+2EDw25N13yU0blIwhvNMO7BMBWLKFsVUc/0vurHCDj/xuzh8OkpN9VpL/i5nOzi26CHBBzMgIIqqnx8MB1suXkg38X05ZJQoFXciqObvHIl85rP3naLjpzgtWDwHSMZ3tceBpYhcFDAuLgw+LEhIGw2de4KYNfAUOyb2zgy7Sga0dZFyJghb9eOMncC3/F2Ahl18f14Uw+kzYaJkBjL/HA05o0j1dM66MhU14iZNJWsr0CHDwXDBdGsYgAbIcDMl9yeIPh+aMqzQq3+YmJFzwQSVtJDGLQbohBExjPRZRgwZ+RbcIr7AfWW5dvviRG8+kHEIqeUpv/uXOn7bhN0xtgMSj/harzml6qpNzLgR+A3sqS3sVc3uDFQavuiiQpKbi8rq/ZyTmSd2gXjo1jH6qcda1wasqth6nd+m9TpHl01fHSSWVQ9gIhgsqzTTDzSUqb6SHiIMWffaH1q6Py8guUoWZrYaSTVZu6ABu3d6hxGfwAX+m2Y/8BeYNvEflP1MxWzN/g0ziH5NsLy8gxdEYXtDOcWD5wwmB89GLzFpGU1KsafZf4qpBgDD9R3STACmc6WQ4whMDEne9jBXoZfxOxCSA+72907hxUQ="
  file: "$DEPLOY_FILE"
  skip_cleanup: true
  on:
    tags: true
    condition: $DEPLOY = true