openshift_container_versions.sh 901 B

12345678910111213141516171819202122
  1. #!/bin/bash
  2. # Here we don't really care if this is a master, api, controller or node image.
  3. # We just need to know the version of one of them.
  4. unit_file=$(ls /etc/systemd/system/${1}*.service | head -n1)
  5. installed_container_name=$(basename -s .service ${unit_file})
  6. installed=$(docker exec ${installed_container_name} openshift version 2> /dev/null | grep openshift | awk '{ print $2 }' | cut -f1 -d"-" | tr -d 'v')
  7. if [ ${1} == "origin" ]; then
  8. image_name="openshift/origin"
  9. elif grep aep $unit_file 2>&1 > /dev/null; then
  10. image_name="aep3/aep"
  11. elif grep openshift3 $unit_file 2>&1 > /dev/null; then
  12. image_name="openshift3/ose"
  13. fi
  14. docker pull ${image_name} 2>&1 > /dev/null
  15. available=$(docker run --rm ${image_name} version 2> /dev/null | grep openshift | awk '{ print $2 }' | cut -f1 -d"-" | tr -d 'v')
  16. echo "---"
  17. echo "curr_version: ${installed}"
  18. echo "avail_version: ${available}"