mirror of
				https://github.com/containers/podman.git
				synced 2025-10-25 18:25:59 +08:00 
			
		
		
		
	 dd8574022d
			
		
	
	dd8574022d
	
	
	
		
			
			It flakes once or twice a day:
   VERSION=1.51.1 ./hack/install_golangci.sh
   Installing golangci-lint v1.51.1 into ./bin/golangci-lint
   golangci/golangci-lint info checking GitHub for tag 'v1.51.1'
   golangci/golangci-lint crit unable to find 'v1.51.1' - use 'latest'
      or see https://github.com/golangci/golangci-lint/releases for details
No visibility into why, and no special reason to believe that
retrying five seconds later will work, but it seems worth a try.
Signed-off-by: Ed Santiago <santiago@redhat.com>
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| # This script is intended to be a convenience, to be called from the
 | |
| # Makefile `.install.golangci-lint` target.  Any other usage is not recommended.
 | |
| 
 | |
| die() { echo "${1:-No error message given} (from $(basename $0))"; exit 1; }
 | |
| 
 | |
| [ -n "$VERSION" ] || die "\$VERSION is empty or undefined"
 | |
| 
 | |
| function install() {
 | |
|     local retry=$1
 | |
| 
 | |
|     local msg="Installing golangci-lint v$VERSION into $BIN"
 | |
|     if [[ $retry -ne 0 ]]; then
 | |
|         msg+=" - retry #$retry"
 | |
|     fi
 | |
|     echo $msg
 | |
| 
 | |
|     curl -sSL --retry 5 https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s v$VERSION
 | |
| }
 | |
| 
 | |
| # Undocumented behavior: golangci-lint installer requires $BINDIR in env,
 | |
| # will default to ./bin but we can't rely on that.
 | |
| export BINDIR="./bin"
 | |
| BIN="$BINDIR/golangci-lint"
 | |
| if [ ! -x "$BIN" ]; then
 | |
|     # This flakes much too frequently with "crit unable to find v1.51.1"
 | |
|     for retry in $(seq 0 5); do
 | |
| 	install $retry && exit 0
 | |
|         sleep 5
 | |
|     done
 | |
| else
 | |
|     # Prints its own file name as part of --version output
 | |
|     $BIN --version | grep "$VERSION"
 | |
|     if [ $? -eq 0 ]; then
 | |
|         echo "Using existing $BINDIR/$($BIN --version)"
 | |
|     else
 | |
|         install
 | |
|     fi
 | |
| fi
 |