disable some video debug code.
[betaflight.git] / .travis.sh
blob666487570c701f13ee4173e46195f63ebd9b1ea7
1 #!/bin/bash
3 REVISION=$(git rev-parse --short HEAD)
4 BRANCH=$(git rev-parse --abbrev-ref HEAD)
5 REVISION=$(git rev-parse --short HEAD)
6 LAST_COMMIT_DATE=$(git log -1 --date=short --format="%cd")
7 TARGET_FILE=obj/cleanflight_${TARGET}
8 TRAVIS_REPO_SLUG=${TRAVIS_REPO_SLUG:=$USER/undefined}
9 BUILDNAME=${BUILDNAME:=travis}
10 TRAVIS_BUILD_NUMBER=${TRAVIS_BUILD_NUMBER:=undefined}
12 CURL_BASEOPTS=(
13 "--retry" "10"
14 "--retry-max-time" "120" )
16 CURL_PUB_BASEOPTS=(
17 "--form" "revision=${REVISION}"
18 "--form" "branch=${BRANCH}"
19 "--form" "travis_build_number=${TRAVIS_BUILD_NUMBER}"
20 "--form" "last_commit_date=${LAST_COMMIT_DATE}"
21 "--form" "github_repo=${TRAVIS_REPO_SLUG}"
22 "--form" "build_name=${BUILDNAME}" )
24 # pass FAIL_ON_WARNINGS when building Pull Request
25 if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
26 OPTIONS="FAIL_ON_WARNINGS"
29 # A hacky way of running the unit tests at the same time as the normal builds.
30 if [ $RUNTESTS ] ; then
31 cd ./src/test && make test OPTIONS="$OPTIONS"
33 # A hacky way of building the docs at the same time as the normal builds.
34 elif [ $PUBLISHDOCS ] ; then
35 if [ $PUBLISH_URL ] ; then
37 # Patch Gimli to fix underscores_inside_words
38 curl -L "${CURL_BASEOPTS[@]}" https://github.com/walle/gimli/archive/v0.5.9.tar.gz | tar zxf -
40 sed -i 's/).render(/, :no_intra_emphasis => true).render(/' gimli-0.5.9/ext/github_markup.rb
42 cd gimli-0.5.9/
43 gem build gimli.gemspec && gem install gimli
44 cd ../
46 ./build_docs.sh
48 curl -k "${CURL_BASEOPTS[@]}" "${CURL_PUB_BASEOPTS[@]}" --form "manual=@docs/Manual.pdf" ${PUBLISH_URL} || true
51 elif [ $PUBLISHMETA ] ; then
52 if [ $PUBLISH_URL ] ; then
53 RECENT_COMMITS=$(git shortlog -n25)
54 curl -k "${CURL_BASEOPTS[@]}" "${CURL_PUB_BASEOPTS[@]}" --form "recent_commits=${RECENT_COMMITS}" ${PUBLISH_URL} || true
57 else
58 if [ $PUBLISH_URL ] ; then
59 make -j2
60 if [ -f ${TARGET_FILE}.bin ] ; then
61 TARGET_FILE=${TARGET_FILE}.bin
62 elif [ -f ${TARGET_FILE}.hex ] ; then
63 TARGET_FILE=${TARGET_FILE}.hex
64 else
65 echo "build artifact (hex or bin) for ${TARGET_FILE} not found, aborting";
66 exit 1
69 curl -k "${CURL_BASEOPTS[@]}" "${CURL_PUB_BASEOPTS[@]}" --form "file=@${TARGET_FILE}" ${PUBLISH_URL} || true
70 exit 0;
71 else
72 make -j2 OPTIONS="$OPTIONS"