Bug 1426155

Summary: docker-excluder should not be installed by mistake after upgrade ocp
Product: OpenShift Container Platform Reporter: liujia <jiajliu>
Component: Cluster Version OperatorAssignee: Jan Chaloupka <jchaloup>
Status: CLOSED CURRENTRELEASE QA Contact: Anping Li <anli>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.5.0CC: aos-bugs, jokerman, mmccomas
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-03-13 12:03:19 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description liujia 2017-02-23 10:22:47 UTC
Description of problem:
Upgrade ocp against rpm env with atomic-openshift-excluder installed and atomic-openshift-docker-excluder uninstalled. 

After upgrade successfully, atomic-openshift-docker-excluder is installed at task [Update to the latest docker-excluder packages] by mistake, which got a wrong "docker_excluder_installed" status check restult from task [Determine if docker packages are installed].

==before upgrade

openshift-119.x.x.x | SUCCESS | rc=0 >>
exclude= tuned-profiles-atomic-openshift-node  atomic-openshift-tests  atomic-openshift-sdn-ovs  atomic-openshift-recycle  atomic-openshift-pod  atomic-openshift-node  atomic-openshift-master  atomic-openshift-dockerregistry  atomic-openshift-clients-redistributable  atomic-openshift-clients  atomic-openshift 


==after upgrade
openshift-119.x.x.x | SUCCESS | rc=0 >>
exclude= docker*1.20*  docker*1.19*  docker*1.18*  docker*1.17*  docker*1.16*  docker*1.15*  docker*1.14*  docker*1.13*  tuned-profiles-atomic-openshift-node  atomic-openshift-tests  atomic-openshift-sdn-ovs  atomic-openshift-recycle  atomic-openshift-pod  atomic-openshift-node  atomic-openshift-master  atomic-openshift-dockerregistry  atomic-openshift-clients-redistributable  atomic-openshift-clients  atomic-openshift


Version-Release number of selected component (if applicable):
atomic-openshift-utils-3.5.13-1.git.0.562e91d.el7.noarch


How reproducible:
always

Steps to Reproduce:
1. rpm install ocp 3.4
2. install atomic-openshift-excluder only(enabled by default)
3. prepare 3.5 ose repo and upgrade ocp3.4 to 3.5

Actual results:
atomic-openshift-docker-excluder is installed after upgrade.

Expected results:
docker-excluder should not be installed.

Additional info:
<--snip-->
- name: Determine if docker packages are installed
  rpm_q:
    name: "{{ openshift.common.service_type }}-excluder"
    state: present
  register: docker_excluder_installed
  failed_when: false
<--snip-->

"{{ openshift.common.service_type }}-excluder" should be "{{ openshift.common.service_type }}-docker-excluder"

Comment 1 Scott Dodson 2017-03-02 15:27:24 UTC
In all situations we expect that docker-excluder is installed and enabled. We need to update docs for that.

Comment 3 liujia 2017-03-08 06:10:18 UTC
blocked verify by bug1430231

Comment 4 Jan Chaloupka 2017-03-08 11:35:05 UTC
Upstream PR: https://github.com/openshift/openshift-ansible/pull/3529

Now, the docker-excluder is installed only when `enable_docker_excluder` is set to true. If the variable is not set, the docker-excluder is not installed.

Comment 5 liujia 2017-03-09 11:12:34 UTC
Version:
atomic-openshift-utils-3.5.28-1.git.0.103513e.el7.noarch

1. Check roles/openshift_excluder/tasks/status.yml to ensure the root cause of this issue has been fixed.
"{{ openshift.common.service_type }}-excluder" has been changed to 
"{{ openshift.common.service_type }}-docker-excluder" in [Determine if docker packages are installed] task.

2. Docker-excluder will be installed and enabled after upgrade which is the expected result for the latest design about upgrade.

According to above, the original issue has been fixed. Change bug status to verify.