Bug 2041935

Summary: fence_openstack: add support for reading config from openrc
Product: Red Hat Enterprise Linux 9 Reporter: Oyvind Albrigtsen <oalbrigt>
Component: fence-agentsAssignee: Oyvind Albrigtsen <oalbrigt>
Status: CLOSED ERRATA QA Contact: Brandon Perkins <bperkins>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 9.0CC: bperkins, cluster-maint, fdinitto, mjuricek
Target Milestone: rcKeywords: Triaged
Target Release: 9.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: fence-agents-4.10.0-30.el9 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-11-15 09:59:10 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:
Bug Depends On:    
Bug Blocks: 2121838    
Deadline: 2022-01-31   

Description Oyvind Albrigtsen 2022-01-18 14:56:56 UTC
Description of problem:
Unable to source openrc style config file.

Version-Release number of selected component (if applicable):


How reproducible:
100%

Steps to Reproduce:
1. Create fence device.
2.
3.

Actual results:
Unable to set openrc location, as agent doesnt have the logic to read it.

Expected results:
Set openrc=<path> to make agent use openrc env file for settings.

Additional info:
https://github.com/ClusterLabs/fence-agents/pull/465
https://github.com/ClusterLabs/fence-agents/pull/466

Comment 1 Oyvind Albrigtsen 2022-01-18 15:05:37 UTC
Example openrc:
[root@nodea ~]# cat .config/openstack/openrc 
# Clear any old environment that may conflict.
for key in $( set | awk '{FS="="}  /^OS_/ {print $1}' ); do unset $key ; done
export NOVA_VERSION=1.1
export COMPUTE_API_VERSION=1.1
export OS_USERNAME=<username>
export OS_PROJECT_NAME=<projectname>
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_NO_CACHE=True
export OS_CLOUDNAME=overcloud
export no_proxy=,<IP1>,<IP2>
export PYTHONWARNINGS='ignore:Certificate has no, ignore:A true SSLContext object is not available'
export OS_AUTH_TYPE=password
export OS_PASSWORD=<password>
export OS_AUTH_URL=https://<IP>:13000
export OS_IDENTITY_API_VERSION=3
export OS_COMPUTE_API_VERSION=2.latest
export OS_IMAGE_API_VERSION=2
export OS_VOLUME_API_VERSION=3
export OS_REGION_NAME=regionOne

# Add OS_CLOUDNAME to PS1
if [ -z "${CLOUDPROMPT_ENABLED:-}" ]; then
    export PS1=${PS1:-""}
    export PS1=\${OS_CLOUDNAME:+"(\$OS_CLOUDNAME)"}\ $PS1
    export CLOUDPROMPT_ENABLED=1
fi

Comment 2 Chris Feist 2022-01-18 19:53:08 UTC
Setting ITM to 26 to get release+. Brandon, if we need a different ITM go ahead and change it.

Comment 15 errata-xmlrpc 2022-11-15 09:59:10 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 (fence-agents bug fix and enhancement update), 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-2022:7981