github.com/gophercloud/gophercloud@v1.11.0/script/format (about) 1 #!/usr/bin/env bash 2 3 goimports="goimports" 4 5 find_files() { 6 find . -not \( \ 7 \( \ 8 -wholename './output' \ 9 -o -wholename './_output' \ 10 -o -wholename './_gopath' \ 11 -o -wholename './release' \ 12 -o -wholename './target' \ 13 -o -wholename '*/third_party/*' \ 14 -o -wholename '*/vendor/*' \ 15 \) -prune \ 16 \) -name '*.go' 17 } 18 19 ignore_files=( 20 "./openstack/compute/v2/extensions/quotasets/testing/fixtures.go" 21 "./openstack/networking/v2/extensions/vpnaas/ikepolicies/testing/requests_test.go" 22 ) 23 24 bad_files=$(find_files | xargs ${goimports} -l) 25 26 final_files=() 27 for bad_file in $bad_files; do 28 found= 29 for ignore_file in "${ignore_files[@]}"; do 30 [[ "${bad_file}" == "${ignore_file}" ]] && { found=1; break; } 31 done 32 [[ -n $found ]] || final_files+=("$bad_file") 33 done 34 35 if [[ "${#final_files[@]}" -gt 0 ]]; then 36 diff=$(echo "${final_files[@]}" | xargs ${goimports} -d -e 2>&1) 37 if [[ -n "${diff}" ]]; then 38 echo "${diff}" 39 exit 1 40 fi 41 fi