From 13c051a097a66f1fcced0eb1b5395f1bb050c419 Mon Sep 17 00:00:00 2001 From: Maxim Prokhorov Date: Wed, 25 Jul 2018 11:01:07 +0300 Subject: [PATCH 1/4] Fix up build.sh error handling from #1008 * Change git detection to not accidentaly exit the shell * Fix [ $par_build ] always being true * Fix git-describe with shallow clone ("No tags can describe ...") --- code/build.sh | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/code/build.sh b/code/build.sh index 57b030f9..18d58766 100755 --- a/code/build.sh +++ b/code/build.sh @@ -1,19 +1,26 @@ #!/bin/bash set -e +# Utility +is_git() { + command -v git >/dev/null 2>&1 || return 1 + command git rev-parse >/dev/null 2>&1 || return 1 + + return 0 +} + # Script settings version=$(grep APP_VERSION espurna/config/version.h | awk '{print $3}' | sed 's/"//g') -(command -v git && git rev-parse --is-inside-work-tree) 2>&1>/dev/null -if [ $? -eq 0 ]; then +if is_git; then git_revision=$(git rev-parse --short HEAD) - git_version=$(git describe --tags) + git_version=${version}-${git_revision} else git_revision= git_version=$version fi -par_build=0 +par_build=false par_thread=${BUILDER_THREAD:-0} par_total_threads=${BUILDER_TOTAL_THREADS:-4} if [ ${par_thread} -ne ${par_thread} -o \ @@ -52,7 +59,7 @@ print_environments() { set_default_environments() { # Hook to build in parallel when using travis - if [[ "${TRAVIS_BUILD_STAGE_NAME}" = "Release" ]] && [ ${par_build} ]; then + if [[ "${TRAVIS_BUILD_STAGE_NAME}" = "Release" ]] && ${par_build}; then environments=$(echo ${available} | \ awk -v par_thread=${par_thread} -v par_total_threads=${par_total_threads} \ '{ for (i = 1; i <= NF; i++) if (++j % par_total_threads == par_thread ) print $i; }') @@ -106,7 +113,7 @@ while getopts "lp" opt; do exit ;; p) - par_build=1 + par_build=true ;; esac done @@ -125,7 +132,7 @@ if [ $# -eq 0 ]; then set_default_environments fi -if [[ "${CI}" = true ]]; then +if ${CI:-false}; then print_environments fi From a07e6a68d02bad68d347a4b8c28dcd198290e155 Mon Sep 17 00:00:00 2001 From: Maxim Prokhorov Date: Wed, 25 Jul 2018 11:45:01 +0300 Subject: [PATCH 2/4] Fix -ota tag of env:itead-sonoff-dual-r2-ota --- code/platformio.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/platformio.ini b/code/platformio.ini index 7802bd91..2c57785f 100644 --- a/code/platformio.ini +++ b/code/platformio.ini @@ -545,7 +545,7 @@ lib_ignore = ${common.lib_ignore} build_flags = ${common.build_flags_1m0m} -DITEAD_SONOFF_DUAL_R2 extra_scripts = ${common.extra_scripts} -[env:itead-sonoff-dual-ota-r2] +[env:itead-sonoff-dual-r2-ota] platform = ${common.platform} framework = ${common.framework} board = ${common.board_1m} From 25c7a00c24a5c2f6a8f22c6ab18abbbda2ac9cc4 Mon Sep 17 00:00:00 2001 From: Maxim Prokhorov Date: Wed, 25 Jul 2018 11:46:32 +0300 Subject: [PATCH 3/4] Better filter for -ota envs --- code/build.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/code/build.sh b/code/build.sh index 57b030f9..f00471f4 100755 --- a/code/build.sh +++ b/code/build.sh @@ -27,8 +27,12 @@ if [ ${par_thread} -ge ${par_total_threads} ]; then fi # Available environments -travis=$(grep env: platformio.ini | grep travis | sed 's/\[env://' | sed 's/\]/ /' | sort) -available=$(grep env: platformio.ini | grep -v ota | grep -v ssl | grep -v travis | sed 's/\[env://' | sed 's/\]/ /' | sort) +list_envs() { + grep env: platformio.ini | sed 's/\[env:\(.*\)\]/\1/g' +} + +travis=$(list_envs | grep travis | sort) +available=$(list_envs | grep -Ev -- '-ota$|-ssl$|^travis' | sort) # Build tools settings export PLATFORMIO_BUILD_FLAGS="${PLATFORMIO_BUILD_FLAGS} -DAPP_REVISION='\"$git_revision\"'" From 69bfafdb2f1455ce95b43dce83eb0da6ae8dcc75 Mon Sep 17 00:00:00 2001 From: Max Prokhorov Date: Wed, 25 Jul 2018 20:57:05 +0300 Subject: [PATCH 4/4] Minor comment error in led.ino --- code/espurna/led.ino | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/espurna/led.ino b/code/espurna/led.ino index f71aa31b..ecfe5eca 100644 --- a/code/espurna/led.ino +++ b/code/espurna/led.ino @@ -293,4 +293,4 @@ void ledLoop() { } -#endif LED_SUPPORT +#endif // LED_SUPPORT