Bug 1617891

Summary: upgrade failed when create openshift examples due to wrong examples_content_version set
Product: OpenShift Container Platform Reporter: liujia <jiajliu>
Component: Cluster Version OperatorAssignee: Scott Dodson <sdodson>
Status: CLOSED ERRATA QA Contact: liujia <jiajliu>
Severity: high Docs Contact:
Priority: high    
Version: 3.11.0CC: aos-bugs, jialiu, jokerman, mifiedle, mmccomas, wmeng, wsun
Target Milestone: ---Keywords: TestBlocker
Target Release: 3.11.0   
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: 2018-10-11 07:24:57 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 2018-08-16 05:48:56 UTC
Description of problem:
Upgrade v3.10 to v3.11 without openshift_release set. Upgrade failed at TASK [openshift_examples : Create tar of OpenShift examples] *******************
task path: /usr/share/ansible/openshift-ansible/roles/openshift_examples/tasks/main.yml:23
Thursday 16 August 2018  01:53:25 +0000 (0:00:00.756)       0:29:55.250 ******* 
fatal: [x -> localhost]: FAILED! => {"changed": true, "cmd": ["tar", "-C", "/usr/share/ansible/openshift-ansible/roles/openshift_examples/files/examples/v3.10/", "-cvf", "/tmp/openshift-ansible-jw0ySYH/openshift-examples.tar", "."], "delta": "0:00:00.531924", "end": "2018-08-16 01:53:26.471971", "msg": "non-zero return code", "rc": 2, "start": "2018-08-16 01:53:25.940047", "stderr": "tar: /usr/share/ansible/openshift-ansible/roles/openshift_examples/files/examples/v3.10/: Cannot open: No such file or directory\ntar: Error is not recoverable: exiting now", "stderr_lines": ["tar: /usr/share/ansible/openshift-ansible/roles/openshift_examples/files/examples/v3.10/: Cannot open: No such file or directory", "tar: Error is not recoverable: exiting now"], "stdout": "", "stdout_lines": []}

=============
#roles/lib_utils/action_plugins/set_version_facts.py
    facts = {}
    if version and version != "latest":
        version = LooseVersion(version)
        version_gte_3_10 = version >= LooseVersion('3.10')
        version_gte_3_11 = version >= LooseVersion('3.11')
    else:
        # 'Latest' version is set to True, 'Next' versions set to False
        version_gte_3_10 = True
        version_gte_3_11 = False
This caused that examples_content_version/content_version was set to 'v3.10'.

After add "openshift_release=v3.11", it works well. So installer need to set correct examples_content_version when not specified in hosts file.

Version-Release number of the following components:
openshift-ansible-3.11.0-0.16.0.git.0.e82689aNone.noarch
ansible-2.6.2-1.el7ae.noarch

How reproducible:
always

Steps to Reproduce:
1. Trigger upgrade against v3.10 ocp without openshift_release specified
2.
3.

Actual results:
Upgrade failed.

Expected results:
Upgrade succeed.

Additional info:
Workaround: set openshift_release in hosts file.

Comment 3 Johnny Liu 2018-08-29 02:28:57 UTC
Could anyone help fix this bug ASAP, this is breaking our automation testing a lot.

Comment 4 Johnny Liu 2018-08-29 07:29:02 UTC
Based on the workaround (openshift_install_examples=false), make upgrade become some partial upgrade, adding "testblocker" keyword.

Comment 7 liujia 2018-09-05 02:34:58 UTC
Verified on openshift-ansible-3.11.0-0.26.0.git.0.13731d2.el7.noarch

Comment 9 errata-xmlrpc 2018-10-11 07:24:57 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:2652