Merge pull request #90617 from CecileRobertMichon/find-bsd-util

Update find-binary-for-platform to work with non-GNU versions of find
This commit is contained in:
Kubernetes Prow Robot 2020-05-04 12:16:27 -07:00 committed by GitHub
commit b15c38e343
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -208,7 +208,12 @@ kube::util::find-binary-for-platform() {
locations+=("$location");
done < <(find "${KUBE_ROOT}/bazel-bin/" -type f -executable \
\( -path "*/${platform/\//_}*/${lookfor}" -o -path "*/${lookfor}" \) 2>/dev/null || true)
# search for executables for non-GNU versions of find (eg. BSD)
while IFS=$'\n' read -r location; do
locations+=("$location");
done < <(find "${KUBE_ROOT}/bazel-bin/" -type f -perm -111 \
\( -path "*/${platform/\//_}*/${lookfor}" -o -path "*/${lookfor}" \) 2>/dev/null || true)
# List most recently-updated location.
local -r bin=$( (ls -t "${locations[@]}" 2>/dev/null || true) | head -1 )
echo -n "${bin}"