github.com/nalind/docker@v1.5.0/project/vendor.sh (about)

     1  #!/usr/bin/env bash
     2  set -e
     3  
     4  cd "$(dirname "$BASH_SOURCE")/.."
     5  
     6  # Downloads dependencies into vendor/ directory
     7  mkdir -p vendor
     8  cd vendor
     9  
    10  clone() {
    11  	vcs=$1
    12  	pkg=$2
    13  	rev=$3
    14  	
    15  	pkg_url=https://$pkg
    16  	target_dir=src/$pkg
    17  	
    18  	echo -n "$pkg @ $rev: "
    19  	
    20  	if [ -d $target_dir ]; then
    21  		echo -n 'rm old, '
    22  		rm -fr $target_dir
    23  	fi
    24  	
    25  	echo -n 'clone, '
    26  	case $vcs in
    27  		git)
    28  			git clone --quiet --no-checkout $pkg_url $target_dir
    29  			( cd $target_dir && git reset --quiet --hard $rev )
    30  			;;
    31  		hg)
    32  			hg clone --quiet --updaterev $rev $pkg_url $target_dir
    33  			;;
    34  	esac
    35  	
    36  	echo -n 'rm VCS, '
    37  	( cd $target_dir && rm -rf .{git,hg} )
    38  	
    39  	echo done
    40  }
    41  
    42  clone git github.com/kr/pty 05017fcccf
    43  
    44  clone git github.com/gorilla/context 14f550f51a
    45  
    46  clone git github.com/gorilla/mux 136d54f81f
    47  
    48  clone git github.com/tchap/go-patricia v1.0.1
    49  
    50  clone hg code.google.com/p/go.net 84a4013f96e0
    51  
    52  clone hg code.google.com/p/gosqlite 74691fb6f837
    53  
    54  clone git github.com/docker/libtrust 230dfd18c232
    55  
    56  clone git github.com/Sirupsen/logrus v0.6.0
    57  
    58  clone git github.com/go-fsnotify/fsnotify v1.0.4
    59  
    60  # get Go tip's archive/tar, for xattr support and improved performance
    61  # TODO after Go 1.4 drops, bump our minimum supported version and drop this vendored dep
    62  if [ "$1" = '--go' ]; then
    63  	# Go takes forever and a half to clone, so we only redownload it when explicitly requested via the "--go" flag to this script.
    64  	clone hg code.google.com/p/go 1b17b3426e3c
    65  	mv src/code.google.com/p/go/src/pkg/archive/tar tmp-tar
    66  	rm -rf src/code.google.com/p/go
    67  	mkdir -p src/code.google.com/p/go/src/pkg/archive
    68  	mv tmp-tar src/code.google.com/p/go/src/pkg/archive/tar
    69  fi
    70  
    71  clone git github.com/docker/libcontainer eb74393a3d2daeafbef4f5f27c0821cbdd67559c
    72  # see src/github.com/docker/libcontainer/update-vendor.sh which is the "source of truth" for libcontainer deps (just like this file)
    73  rm -rf src/github.com/docker/libcontainer/vendor
    74  eval "$(grep '^clone ' src/github.com/docker/libcontainer/update-vendor.sh | grep -v 'github.com/codegangsta/cli')"
    75  # we exclude "github.com/codegangsta/cli" here because it's only needed for "nsinit", which Docker doesn't include