Check of docker installation is incorrect

Bug #1647459 reported by hongbin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Zun
Fix Released
Undecided
hongbin
kuryr-kubernetes
Fix Released
Undecided
Unassigned
kuryr-libnetwork
Fix Released
Undecided
Unassigned

Bug Description

In devstack, it checked docker installation by:

  function check_docker {
      if is_ubuntu; then
         dpkg -s docker-engine > /dev/null 2>&1
      else
         rpm -q docker-engine > /dev/null 2>&1
      fi
  }

There is a corner case that this check is failing:
* In Fedora24
* Install docker by "sudo dnf install docker-engine"
* Then, "rpm -q docker-engine" will return non-zero:
  $ rpm -q docker-engine
  package docker-engine is not installed

  $ rpm -q docker
  docker-1.10.3-54.gite03ddb8.fc24.x86_64

NOTE: this failure won't occur if users installed docker by devstack. It only occurred only if users pre-install docker by using distro package before running devstack.

hongbin (hongbin034)
no longer affects: kuryr
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to zun (master)

Fix proposed to branch: master
Review: https://review.openstack.org/407183

Changed in zun:
assignee: nobody → hongbin (hongbin034)
status: New → In Progress
Changed in kuryr-kubernetes:
assignee: nobody → feng.shengqin@zte.com.cn (feng-shengqin)
Changed in kuryr-libnetwork:
assignee: nobody → feng.shengqin@zte.com.cn (feng-shengqin)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to kuryr-libnetwork (master)

Fix proposed to branch: master
Review: https://review.openstack.org/407269

Changed in kuryr-libnetwork:
status: New → In Progress
Changed in kuryr-kubernetes:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to kuryr-kubernetes (master)

Fix proposed to branch: master
Review: https://review.openstack.org/407270

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on kuryr-libnetwork (master)

Change abandoned by feng.shengqin (<email address hidden>) on branch: master
Review: https://review.openstack.org/407269

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on kuryr-kubernetes (master)

Change abandoned by feng.shengqin (<email address hidden>) on branch: master
Review: https://review.openstack.org/407270

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to zun (master)

Reviewed: https://review.openstack.org/407183
Committed: https://git.openstack.org/cgit/openstack/zun/commit/?id=d43b709ef8f3b833830d45cef829e268ab72ddb7
Submitter: Jenkins
Branch: master

commit d43b709ef8f3b833830d45cef829e268ab72ddb7
Author: Hongbin Lu <email address hidden>
Date: Mon Dec 5 14:06:14 2016 -0600

    Fix the check of docker installation

    In before, we checked docker installation by:

      $ rpm -q docker-engine

    However, this doesn't work for all cases. In some cases, the docker
    installation is of name "docker" instead of "docker-engine". This
    commit added check for "docker" as well.

    Change-Id: I49ef8cfe4bcf1d22770ba143c6301d8b54e9d372
    Closes-Bug: #1647459

Changed in zun:
status: In Progress → Fix Released
Changed in kuryr-kubernetes:
assignee: feng.shengqin@zte.com.cn (feng-shengqin) → nobody
Changed in kuryr-libnetwork:
assignee: feng.shengqin@zte.com.cn (feng-shengqin) → nobody
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to kuryr-libnetwork (master)

Reviewed: https://review.openstack.org/407172
Committed: https://git.openstack.org/cgit/openstack/kuryr-libnetwork/commit/?id=0e5b4205842c33c3880e82c292c1a2da01e8d23e
Submitter: Jenkins
Branch: master

commit 0e5b4205842c33c3880e82c292c1a2da01e8d23e
Author: Hongbin Lu <email address hidden>
Date: Mon Dec 5 13:58:04 2016 -0600

    Fix the check of docker installation

    In before, we checked docker installation by:

      $ rpm -q docker-engine

    However, this doesn't work for all cases in fedora 24.
    * If docker was installed by "sudo dnf install docker-engine", the
      package will be named as "docker". Therefore, it should be checked
      by "rpm -q docker".
    * If docker was installed by devstack (by using
      https://get.docker.com/), the package will be named as
      "docker-engine". Therefore, it should be checked by
      "rpm -q docker-engine".

    This commit added check for "docker" as well.

    Closes-Bug: #1647459
    Change-Id: If89d8b62ffa542f0491f43d42a119741882eb3cd

Changed in kuryr-libnetwork:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to kuryr-kubernetes (master)

Reviewed: https://review.openstack.org/407179
Committed: https://git.openstack.org/cgit/openstack/kuryr-kubernetes/commit/?id=703ac9ad61bf2dac5d82386478a1aad4381ed90e
Submitter: Jenkins
Branch: master

commit 703ac9ad61bf2dac5d82386478a1aad4381ed90e
Author: Hongbin Lu <email address hidden>
Date: Mon Dec 5 14:03:36 2016 -0600

    Fix the check of docker installation

    In before, we checked docker installation by:

      $ rpm -q docker-engine

    However, this doesn't work for all cases in fedora 24.
    * If docker was installed by "sudo dnf install docker-engine", the
      package will be named as "docker". Therefore, it should be checked
      by "rpm -q docker".
    * If docker was installed by devstack (by using
      https://get.docker.com/), the package will be named as
      "docker-engine". Therefore, it should be checked by
      "rpm -q docker-engine".

    This commit added check for "docker" as well.

    Change-Id: If2fc8a9d210bb663bfd9780c564053a901327a20
    Closes-Bug: #1647459

Changed in kuryr-kubernetes:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.