Bug 1517225

Summary: Install CNS failed when copy initial glusterblock provisioner resource file
Product: OpenShift Container Platform Reporter: Wenkai Shi <weshi>
Component: InstallerAssignee: Jose A. Rivera <jarrpa>
Status: CLOSED ERRATA QA Contact: Wenkai Shi <weshi>
Severity: high Docs Contact:
Priority: high    
Version: 3.7.1CC: aos-bugs, jokerman, mmccomas, rspazzol, sdodson
Target Milestone: ---   
Target Release: 3.7.z   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: No Doc Update
Doc Text:
Previously, deploying glusterblock storage would fail due to a missing file. The file name has been corrected ensuring proper deployment.
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-12-18 13:24:28 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 Wenkai Shi 2017-11-24 11:00:37 UTC
Description of problem:
Installer will deploy glusterblock provisioner service by default when install CNS. Installer failed when copy initial glusterblock provisioner resource file task.

Version-Release number of the following components:
openshift-ansible-3.7.9-1.git.4.d445616.el7
ansible-2.4.1.0-1.el7

How reproducible:
100%

Steps to Reproduce:
1. Install OCP with CNS, deploy glusterblock provisioner service by default.
2.
3.

Actual results:
# ansible-playbook -i inventory /usr/share/ansible/openshift-ansible/playbooks/byo/config.yml -vvv
...
TASK [openshift_storage_glusterfs : Copy initial glusterblock provisioner resource file] *****************************************************************************************************
task path: /usr/share/ansible/openshift-ansible/roles/openshift_storage_glusterfs/tasks/glusterblock_deploy.yml:27
The full traceback is:
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ansible/plugins/action/copy.py", line 457, in run
    source = self._find_needle('files', source)
  File "/usr/lib/python2.7/site-packages/ansible/plugins/action/__init__.py", line 983, in _find_needle
    return self._loader.path_dwim_relative_stack(path_stack, dirname, needle)
  File "/usr/lib/python2.7/site-packages/ansible/parsing/dataloader.py", line 386, in path_dwim_relative_stack
    raise AnsibleFileNotFound(file_name=source, paths=[to_text(p) for p in search])
AnsibleFileNotFound: Could not find or access 'v3.7/glusterblock-template.yml'
Searched in:
	/usr/share/ansible/openshift-ansible/roles/openshift_storage_glusterfs/files/v3.7/glusterblock-template.yml
	/usr/share/ansible/openshift-ansible/roles/openshift_storage_glusterfs/v3.7/glusterblock-template.yml
	/usr/share/ansible/openshift-ansible/roles/openshift_storage_glusterfs/tasks/files/v3.7/glusterblock-template.yml
	/usr/share/ansible/openshift-ansible/roles/openshift_storage_glusterfs/tasks/v3.7/glusterblock-template.yml
	/usr/share/ansible/openshift-ansible/playbooks/byo/openshift-cluster/../../common/openshift-cluster/../openshift-glusterfs/files/v3.7/glusterblock-template.yml
	/usr/share/ansible/openshift-ansible/playbooks/byo/openshift-cluster/../../common/openshift-cluster/../openshift-glusterfs/v3.7/glusterblock-template.yml

failed: [qe-weshi-cns-master-example.com] (item=glusterblock-template.yml) => {
    "changed": false, 
    "failed": true, 
    "item": "glusterblock-template.yml", 
    "msg": "Could not find or access 'v3.7/glusterblock-template.yml'\nSearched in:\n\t/usr/share/ansible/openshift-ansible/roles/openshift_storage_glusterfs/files/v3.7/glusterblock-template.yml\n\t/usr/share/ansible/openshift-ansible/roles/openshift_storage_glusterfs/v3.7/glusterblock-template.yml\n\t/usr/share/ansible/openshift-ansible/roles/openshift_storage_glusterfs/tasks/files/v3.7/glusterblock-template.yml\n\t/usr/share/ansible/openshift-ansible/roles/openshift_storage_glusterfs/tasks/v3.7/glusterblock-template.yml\n\t/usr/share/ansible/openshift-ansible/playbooks/byo/openshift-cluster/../../common/openshift-cluster/../openshift-glusterfs/files/v3.7/glusterblock-template.yml\n\t/usr/share/ansible/openshift-ansible/playbooks/byo/openshift-cluster/../../common/openshift-cluster/../openshift-glusterfs/v3.7/glusterblock-template.yml"
}
	to retry, use: --limit @/usr/share/ansible/openshift-ansible/playbooks/byo/config.retry
...

Expected results:
Deploy glusterblock provisioner service succeed.

Additional info:

Comment 1 Scott Dodson 2017-11-28 04:32:10 UTC
https://github.com/openshift/openshift-ansible/pull/6211 should've fixed this one and the fix should be in openshift-ansible-3.7.9-1.git.36.60dc0ea.el7

Comment 2 Wenkai Shi 2017-11-28 05:56:30 UTC
Verified with version openshift-ansible-3.7.9-1.git.36.60dc0ea.el7, Copy initial glusterblock provisioner resource file task could pass.

# ansible-playbook -i inventory /usr/share/ansible/openshift-ansible/playbooks/byo/config.yml -v
...
TASK [openshift_storage_glusterfs : Copy initial glusterblock provisioner resource file] ***
Tuesday 28 November 2017  05:53:04 +0000 (0:00:00.039)       0:30:15.224 ****** 

changed: [master.example.com] => (item=glusterblock-provisioner.yml) => {"changed": true, "checksum": "2bafa6b67f00bb79b7ba5b123d3cabb37b48fe8e", "dest": "/tmp/openshift-glusterfs-ansible-mechHo/glusterblock-provisioner.yml", "failed": false, "gid": 0, "group": "root", "item": "glusterblock-provisioner.yml", "md5sum": "d92b060e11c9732260947761d7b7d775", "mode": "0644", "owner": "root", "secontext": "unconfined_u:object_r:admin_home_t:s0", "size": 3175, "src": "/root/.ansible/tmp/ansible-tmp-1511848384.36-125120601779949/source", "state": "file", "uid": 0}
...

Comment 3 Scott Dodson 2017-12-12 15:02:05 UTC
*** Bug 1524781 has been marked as a duplicate of this bug. ***

Comment 6 errata-xmlrpc 2017-12-18 13:24:28 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-2017:3464