mirror of
				https://github.com/moby/moby.git
				synced 2022-11-09 12:21:53 -05:00 
			
		
		
		
	Finally add precise/12.04 as a build-deb target
Ubuntu Precise has a number of warts that made it non-trivial to add initially, but I've managed to work through some of them and come up with a working build. Two important parts to note are that it has neither the `btrfs` nor the `devicemapper` graphdriver backends since `btrfs-tools` and `libdevmapper-dev` in the precise repositories are too ancient for them to even compile. Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
This commit is contained in:
		
							parent
							
								
									b21ef2d1d3
								
							
						
					
					
						commit
						98180b8954
					
				
					 3 changed files with 35 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -41,6 +41,8 @@ for version in "${versions[@]}"; do
 | 
			
		|||
 | 
			
		||||
	echo >> "$version/Dockerfile"
 | 
			
		||||
 | 
			
		||||
	extraBuildTags=
 | 
			
		||||
 | 
			
		||||
	# this list is sorted alphabetically; please keep it that way
 | 
			
		||||
	packages=(
 | 
			
		||||
		bash-completion # for bash-completion debhelper integration
 | 
			
		||||
| 
						 | 
				
			
			@ -54,6 +56,23 @@ for version in "${versions[@]}"; do
 | 
			
		|||
		libdevmapper-dev # for "libdevmapper.h"
 | 
			
		||||
		libsqlite3-dev # for "sqlite3.h"
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	if [ "$suite" = 'precise' ]; then
 | 
			
		||||
		# precise has a few package issues
 | 
			
		||||
 | 
			
		||||
		# - dh-systemd doesn't exist at all
 | 
			
		||||
		packages=( "${packages[@]/dh-systemd}" )
 | 
			
		||||
 | 
			
		||||
		# - libdevmapper-dev is missing critical structs (too old)
 | 
			
		||||
		packages=( "${packages[@]/libdevmapper-dev}" )
 | 
			
		||||
		extraBuildTags+=' exclude_graphdriver_devicemapper'
 | 
			
		||||
 | 
			
		||||
		# - btrfs-tools is missing "ioctl.h" (too old), so it's useless
 | 
			
		||||
		#   (since kernels on precise are old too, just skip btrfs entirely)
 | 
			
		||||
		packages=( "${packages[@]/btrfs-tools}" )
 | 
			
		||||
		extraBuildTags+=' exclude_graphdriver_btrfs'
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	echo "RUN apt-get update && apt-get install -y ${packages[*]} --no-install-recommends && rm -rf /var/lib/apt/lists/*" >> "$version/Dockerfile"
 | 
			
		||||
 | 
			
		||||
	echo >> "$version/Dockerfile"
 | 
			
		||||
| 
						 | 
				
			
			@ -65,5 +84,5 @@ for version in "${versions[@]}"; do
 | 
			
		|||
	echo >> "$version/Dockerfile"
 | 
			
		||||
 | 
			
		||||
	echo 'ENV AUTO_GOPATH 1' >> "$version/Dockerfile"
 | 
			
		||||
	awk '$1 == "ENV" && $2 == "DOCKER_BUILDTAGS" { print; exit }' ../../../Dockerfile >> "$version/Dockerfile"
 | 
			
		||||
	awk '$1 == "ENV" && $2 == "DOCKER_BUILDTAGS" { print $0 "'"$extraBuildTags"'"; exit }' ../../../Dockerfile >> "$version/Dockerfile"
 | 
			
		||||
done
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										14
									
								
								contrib/builder/deb/ubuntu-debootstrap-precise/Dockerfile
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								contrib/builder/deb/ubuntu-debootstrap-precise/Dockerfile
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,14 @@
 | 
			
		|||
#
 | 
			
		||||
# THIS FILE IS AUTOGENERATED; SEE "contrib/builder/deb/generate.sh"!
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
FROM ubuntu-debootstrap:precise
 | 
			
		||||
 | 
			
		||||
RUN apt-get update && apt-get install -y bash-completion  build-essential curl ca-certificates debhelper  git libapparmor-dev  libsqlite3-dev --no-install-recommends && rm -rf /var/lib/apt/lists/*
 | 
			
		||||
 | 
			
		||||
ENV GO_VERSION 1.4.2
 | 
			
		||||
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
 | 
			
		||||
ENV PATH $PATH:/usr/local/go/bin
 | 
			
		||||
 | 
			
		||||
ENV AUTO_GOPATH 1
 | 
			
		||||
ENV DOCKER_BUILDTAGS apparmor selinux exclude_graphdriver_devicemapper exclude_graphdriver_btrfs
 | 
			
		||||
| 
						 | 
				
			
			@ -33,4 +33,4 @@ override_dh_installudev:
 | 
			
		|||
	dh_installudev --priority=z80
 | 
			
		||||
 | 
			
		||||
%:
 | 
			
		||||
	dh $@ --with=systemd,bash-completion
 | 
			
		||||
	dh $@ --with=bash-completion $(shell command -v dh_systemd_enable > /dev/null 2>&1 && echo --with=systemd)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue