kadirnar's picture
Upload 494 files
8a42f8f verified
raw
history blame
1.56 kB
#!/bin/bash
print_banner() {
printf "\n\n\n\e[30m\e[42m$1\e[0m\n\n\n\n"
}
print_green() {
printf "\e[30m\e[42m$1\e[0m\n"
}
print_red() {
printf "\e[30m\e[41m$1\e[0m\n"
}
images=(
"pytorch/pytorch:nightly-devel-cuda10.0-cudnn7"
"pytorch/pytorch:1.1.0-cuda10.0-cudnn7.5-devel"
"pytorch/pytorch:1.0.1-cuda10.0-cudnn7-devel"
"pytorch/pytorch:1.0-cuda10.0-cudnn7-devel"
"pytorch/pytorch:nightly-devel-cuda9.2-cudnn7"
)
branch="master"
# Associative array for exit codes
declare -A exit_codes
for image in images
do
exit_codes[$image]="None"
done
for image in "${images[@]}"
do
print_banner "$image"
set -x
docker pull $image
# Trying python setup.py install instead of pip install to ensure direct access to error codes.
# Maybe pip install would be ok too but this works.
docker run --runtime=nvidia --rm $image /bin/bash -c "yes | pip uninstall apex; yes | pip uninstall apex; git clone https://github.com/NVIDIA/apex.git; cd apex; git checkout $branch; set -e; python setup.py install --cuda_ext --cpp_ext"
exit_code=$?
set +x
if [ $exit_code != 0 ]
then
print_red "Exit code: $exit_code"
else
print_green "Exit code: $exit_code"
fi
exit_codes[$image]=$exit_code
done
success=0
for image in "${images[@]}"
do
exit_code=${exit_codes[$image]}
if [ $exit_code != 0 ]
then
print_red "$image : $exit_code"
success=1
else
print_green "$image : $exit_code"
fi
done
if [ $success != 0 ]
then
print_red "Overall status: failure"
else
print_green "Overall status: success"
fi
exit $success