Minor Bash improvements Based on output of static analysis tool. https://github.com/koalaman/shellcheck/wiki/SC2166 https://github.com/koalaman/shellcheck/wiki/SC2207 https://github.com/koalaman/shellcheck/wiki/SC2145 https://github.com/koalaman/shellcheck/wiki/SC2001 https://github.com/koalaman/shellcheck/wiki/SC2129 https://github.com/koalaman/shellcheck/wiki/SC2128 https://github.com/koalaman/shellcheck/wiki/SC2004 https://github.com/koalaman/shellcheck/wiki/SC2048 Closes #3162. PiperOrigin-RevId: 160261247
diff --git a/scripts/ci/build.sh b/scripts/ci/build.sh index 1f1dade..9ead03c 100755 --- a/scripts/ci/build.sh +++ b/scripts/ci/build.sh
@@ -120,7 +120,7 @@ mkdir -p $1/packages cp bazel-bin/src/bazel $1/bazel # The version with a bundled JDK may not exist on all platforms. - if [ "${JAVA_VERSION}" = "1.8" -a -e "bazel-bin/scripts/packages/with-jdk/install.sh" ]; then + if [ "${JAVA_VERSION}" = "1.8" ] && [ -e "bazel-bin/scripts/packages/with-jdk/install.sh" ]; then cp bazel-bin/scripts/packages/with-jdk/install.sh $1/bazel-${release_label}-installer.sh cp bazel-bin/scripts/packages/without-jdk/install.sh $1/bazel-${release_label}-without-jdk-installer.sh else
diff --git a/scripts/ci/ci.sh b/scripts/ci/ci.sh index e25f8d5..546c3b4 100755 --- a/scripts/ci/ci.sh +++ b/scripts/ci/ci.sh
@@ -50,15 +50,15 @@ # Get a list of the current files in package form by querying Bazel. files=() for file in $(git diff --name-only ${COMMIT_RANGE} ); do - files+=($(bazel query $file)) - echo $(bazel query $file) + IFS=$'\n' read -r -a files <<< "$(bazel query $file)" + bazel query $file done # Query for the associated buildables buildables=$(bazel query \ --keep_going \ --noshow_progress \ - "kind(.*_binary, rdeps(//..., set(${files[@]})))") + "kind(.*_binary, rdeps(//..., set(${files[*]})))") # Run the tests if there were results if [[ ! -z $buildables ]]; then echo "Building binaries" @@ -68,7 +68,7 @@ tests=$(bazel query \ --keep_going \ --noshow_progress \ - "kind(test, rdeps(//..., set(${files[@]}))) except attr('tags', 'manual', //...)") + "kind(test, rdeps(//..., set(${files[*]}))) except attr('tags', 'manual', //...)") # Run the tests if there were results if [[ ! -z $tests ]]; then echo "Running tests"
diff --git a/scripts/release/common.sh b/scripts/release/common.sh index 7cd6d0b..ca8ebd4 100755 --- a/scripts/release/common.sh +++ b/scripts/release/common.sh
@@ -89,7 +89,7 @@ # candidate in this release. function get_release_branch() { local branch_name=$(git_get_branch) - if [ -z "$(get_release_name)" -o -z "$(get_release_candidate)" ]; then + if [ -z "$(get_release_name)" ] || [ -z "$(get_release_candidate)" ]; then echo "Not a release branch: ${branch_name}." >&2 exit 1 fi
diff --git a/scripts/release/release.sh b/scripts/release/release.sh index e3fb691..13c874c 100755 --- a/scripts/release/release.sh +++ b/scripts/release/release.sh
@@ -102,10 +102,12 @@ trap "rm -f ${tmpfile}" EXIT echo -n "## ${infos}" >${tmpfile} if [ -f "${changelog_path}" ]; then - echo >>${tmpfile} - echo >>${tmpfile} - cat "${changelog_path}" >>${tmpfile} - echo >>${tmpfile} + { + echo + echo + cat "${changelog_path}" + echo + } >> ${tmpfile} fi cat "${tmpfile}" > ${changelog_path} git add ${changelog_path} @@ -313,7 +315,7 @@ echo -n "You are about to release branch ${branch} in tag ${tag_name}, confirm? [y/N] " read answer - if [ "$answer" = "y" -o "$answer" = "Y" ]; then + if [ "$answer" = "y" ] || [ "$answer" = "Y" ]; then echo "Creating the release commit" create_release_commit "${tag_name}" set_release_name "${tag_name}" @@ -352,7 +354,7 @@ local tag_name=$(get_release_name) echo -n "You are about to abandon release ${tag_name}, confirm? [y/N] " read answer - if [ "$answer" = "y" -o "$answer" = "Y" ]; then + if [ "$answer" = "y" ] || [ "$answer" = "Y" ]; then git notes --ref=release remove 2>/dev/null || true git notes --ref=release-candidate remove 2>/dev/null || true git checkout -q master >/dev/null