Skip to content
Snippets Groups Projects
update 1.83 KiB
Newer Older
  • Learn to ignore specific revisions
  • jurgenhaas's avatar
    jurgenhaas committed
    function cleanup {
      NEWIMAGEID=$(docker image ls -q registry.lakedrops.com/docker/l3d/php-${PHP_VERSION}:${VERSION} | head -1)
      while true; do
    
    jurgenhaas's avatar
    jurgenhaas committed
        if [[ $L3D_FORCE_UPDATE -eq 1 ]]; then
          IMAGEID=$(docker image ls -q registry.lakedrops.com/docker/l3d/php-${PHP_VERSION})
        else
          IMAGEID=$(docker image ls -q registry.lakedrops.com/docker/l3d/php-${PHP_VERSION} | grep -v ${NEWIMAGEID})
        fi
    
        if [[ -n ${IMAGEID} ]]; then
          while true; do
            ID=$(docker container ls --all -q -f ancestor=${IMAGEID})
            if [[ -n ${ID} ]]; then
    
    jurgenhaas's avatar
    jurgenhaas committed
              echo "Removing outdated container ..."
    
              docker kill ${ID} >/dev/null
              docker rm ${ID} >/dev/null
            else
              break
            fi
          done
    
    jurgenhaas's avatar
    jurgenhaas committed
          if [[ $L3D_FORCE_UPDATE -eq 0 ]]; then
            echo "Removing outdated image ..."
            docker rmi ${IMAGEID} >/dev/null
          fi
    
    jurgenhaas's avatar
    jurgenhaas committed
        else
          break
        fi
      done
      IMAGEID=$(docker image ls -q registry.lakedrops.com/docker/node:8-jessie-slim)
      if [[ -n ${IMAGEID} ]]; then
        while true; do
          ID=$(docker container ls --all -q -f ancestor=${IMAGEID})
          if [[ -n ${ID} ]]; then
            echo "Removing outdated node container ..."
            docker kill ${ID} >/dev/null
            docker rm ${ID} >/dev/null
          else
            break
          fi
        done
      fi
    }
    
    if [[ -n ${PHP_VERSION} ]]; then
      if [[ $L3D_FORCE_UPDATE -eq 1 ]]; then
        echo "Force update"
        cleanup
      else
        IMAGEID=$(docker image ls -q registry.lakedrops.com/docker/l3d/php-${PHP_VERSION} | head -1)
        if [[ -z ${IMAGEID} ]]; then
          exit
        fi
        echo "Updating the image ..."
        STATUS=$(docker pull registry.lakedrops.com/docker/l3d/php-${PHP_VERSION}:${VERSION})
        if [[ "$STATUS" == *"Status: Image is up to date"* ]]; then
          echo "Already up to date"
        else
          echo "Image updated"
          cleanup