mdbook 0.0.19

create books from markdown files (like Gitbook)
Documentation
# `script` phase: you usually build, test and generate docs in this phase


set -ex


# NOTE Workaround for rust-lang/rust#31907 - disable doc tests when cross compiling

# This has been fixed in the nightly channel but it would take a while to reach the other channels

disable_cross_doctests() {
  local host

  case "$TRAVIS_OS_NAME" in
    linux)
      host=x86_64-unknown-linux-gnu
      ;;
    osx)
      host=x86_64-apple-darwin
      ;;
  esac

  if [ "$host" != "$TARGET" ] && [ "$CHANNEL" != "nightly" ]; then
    if [ "$TRAVIS_OS_NAME" = "osx" ]; then
      brew install gnu-sed --default-names

    fi


    find src -name '*.rs' -type f | xargs sed -i -e 's:\(//.\s*```\):\1 ignore,:g'

  fi

}

run_test_suite() {
  # Extra test without default features to avoid bitrot. We only test on a single target (but with

  # all the channels) to avoid significantly increasing the build times

  if [ $TARGET = x86_64-unknown-linux-gnu ]; then
    cargo build --target $TARGET --no-default-features --verbose

    cargo test --target $TARGET --no-default-features --verbose

    cargo clean

  fi


  cargo build --target $TARGET --verbose

  cargo test --target $TARGET --verbose

}

main() {
  disable_cross_doctests

  run_test_suite

}

main