Merge pull request #15183 from jfrazelle/test-install-script

add file to test install script
This commit is contained in:
Jessie Frazelle 2015-08-12 09:49:35 -07:00
commit e82358586d
4 changed files with 39 additions and 11 deletions

View File

@ -2,8 +2,7 @@
# THIS FILE IS AUTOGENERATED; SEE "contrib/builder/deb/generate.sh"!
#
FROM debian:wheezy
RUN echo deb http://http.debian.net/debian wheezy-backports main > /etc/apt/sources.list.d/wheezy-backports.list
FROM debian:wheezy-backports
RUN apt-get update && apt-get install -y bash-completion btrfs-tools build-essential curl ca-certificates debhelper dh-systemd git libapparmor-dev libdevmapper-dev libsqlite3-dev --no-install-recommends && rm -rf /var/lib/apt/lists/*

View File

@ -22,6 +22,13 @@ for version in "${versions[@]}"; do
suite="${version##*-}"
from="${distro}:${suite}"
case "$from" in
debian:wheezy)
# add -backports, like our users have to
from+='-backports'
;;
esac
mkdir -p "$version"
echo "$version -> FROM $from"
cat > "$version/Dockerfile" <<-EOF
@ -32,13 +39,6 @@ for version in "${versions[@]}"; do
FROM $from
EOF
case "$from" in
debian:wheezy)
# add -backports, like our users have to
echo "RUN echo deb http://http.debian.net/debian $suite-backports main > /etc/apt/sources.list.d/$suite-backports.list" >> "$version/Dockerfile"
;;
esac
echo >> "$version/Dockerfile"
extraBuildTags=

View File

@ -198,11 +198,11 @@ do_install() {
oracleserver)
# need to switch lsb_dist to match yum repo URL
lsb_dist="oraclelinux"
dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//')"
dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')"
;;
fedora|centos)
dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//')"
dist_version="$(rpm -q --whatprovides redhat-release --queryformat "%{VERSION}\n" | sed 's/\/.*//' | sed 's/\..*//' | sed 's/Server*//')"
;;
*)

29
hack/make/test-install-script Executable file
View File

@ -0,0 +1,29 @@
#!/bin/bash
# This script is used for testing install.sh and that it works for
# each of component of our apt and yum repos
set -e
test_install_script(){
# these are equivalent to main, testing, experimental components
# in the repos, but its the url that will do the conversion
components=( experimental test get )
for component in "${components[@]}"; do
# change url to specific component for testing
local test_url=https://${component}.docker.com
local script=$(mktemp /tmp/install-XXXXXXXXXX.sh)
sed "s,url='https://get.docker.com/',url='${test_url}/'," hack/install.sh > "${script}"
chmod +x "${script}"
# test for each Dockerfile in contrib/builder
for dir in contrib/builder/*/*/; do
local from="$(awk 'toupper($1) == "FROM" { print $2; exit }' "$dir/Dockerfile")"
echo "running install.sh for ${component} with ${from}"
docker run --rm -it -v ${script}:/install.sh ${from} /install.sh
done
done
}
test_install_script