#!/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 -i -v ${script}:/install.sh ${from} /install.sh done done } test_install_script