github.com/dolthub/go-mysql-server@v0.18.0/format_repo.sh (about) 1 #!/bin/bash 2 3 # Copyright 2020-2021 Dolthub, Inc. 4 # 5 # Licensed under the Apache License, Version 2.0 (the "License"); 6 # you may not use this file except in compliance with the License. 7 # You may obtain a copy of the License at 8 # 9 # http://www.apache.org/licenses/LICENSE-2.0 10 # 11 # Unless required by applicable law or agreed to in writing, software 12 # distributed under the License is distributed on an "AS IS" BASIS, 13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 # See the License for the specific language governing permissions and 15 # limitations under the License. 16 17 set -eo pipefail 18 19 paths=`find . -maxdepth 1 -mindepth 1 \( -name gen -prune -o -type d -print -o -type f -name '*.go' -print \)` 20 21 goimports -w -local github.com/dolthub/go-mysql-server $paths 22 23 bad_files=$(find $paths -name '*.go' | while read f; do 24 if [[ $(awk '/import \(/{flag=1;next}/\)/{flag=0}flag' < $f | egrep -c '$^') -gt 2 ]]; then 25 echo $f 26 fi 27 done) 28 29 if [ "$bad_files" != "" ]; then 30 for f in $bad_files; do 31 awk '/import \(/{flag=1}/\)/{flag=0}flag&&!/^$/||!flag' < "$f" > "$f.bak" 32 mv "$f.bak" "$f" 33 done 34 goimports -w -local github.com/dolthub/go-mysql-server . 35 fi