Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1654514

Summary: Cannot change value of no_shared_storage on stack update (instanceha) in OSP 13
Product: Red Hat OpenStack Reporter: Andreas Karis <akaris>
Component: puppet-tripleoAssignee: RHOS Maint <rhos-maint>
Status: CLOSED DUPLICATE QA Contact: nlevinki <nlevinki>
Severity: low Docs Contact:
Priority: low    
Version: 13.0 (Queens)CC: abeekhof, jjoyce, jschluet, michele, ramishra, slinaber, tvignaud
Target Milestone: ---Keywords: Triaged, ZStream
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: 2019-01-09 09:15:22 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 Andreas Karis 2018-11-28 23:26:28 UTC
Description of problem:
Cannot change value of no_shared_storage on stack update (instanceha) in OSP 13

Version-Release number of selected component (if applicable):
OSP 13, latest

How reproducible:
Deploy a stack with no_shared_storage=true
Set no_shared_storage=false
Run `openstack overcloud deploy` again to cause a stack update.

Steps to Reproduce:
1.
2.
3.

Actual results:
no_shared_storage remains the same (true in the example case)

Expected results:
no_shared_storage changes to the new value on stack update (false in the example case)


Additional info:

/etc/puppet/modules/tripleo/manifests/profile/base/pacemaker/instance_ha.pp
~~~
    108     if $no_shared_storage {
    109       $iha_no_shared_storage = 'no_shared_storage=true'
    110     } else {
    111       $iha_no_shared_storage = 'no_shared_storage=false'
    112     }
    113     pacemaker::resource::ocf { 'nova-evacuate':
    114       ocf_agent_name  => 'openstack:NovaEvacuate',
    115       # lint:ignore:140chars
    116       resource_params => "auth_url=${keystone_endpoint_url} username=${keystone_admin} password=${keystone_password} user_domain=${user_domain} project_domain=${project_domain} tenant_name=${keystone_admin} ${iha_no_shared_        storage}",
    117       # lint:endignore
    118       tries           => $pcs_tries,
    119       location_rule   => {
    120         resource_discovery => 'never',
    121         score              => '-INFINITY',
    122         expression         => ['compute-instanceha-role eq true'],
    123       }
    124     }
~~~

Comment 1 Andreas Karis 2018-11-28 23:28:53 UTC
Workaround:

# get backup output
pcs resource show nova-evacuate
# change the shared_storage parameter:
pcs resource set nova-evacuate no_shared_storage=false
# verify new settings
pcs resource show nova-evacuate