* Control openbmc Perl/Python commands with site attribute
* update PR: control openbmc perl/python commands, using site attribute, env variable as well
`rmdef` command do not help clean up the recousrces that related to
the node when removing the node. this is a technical debt. This patch
is only a work around to add -C|--cleanup option to help remove the
entries in goconserver.
On diskless SN, the nodes file of goconserver is missing when
reinstalling. This patch add a column in nodehm table to help
recover the console information on service node.
```
[root@c910f03c09k04 ~]# makegocons -q
NODE SERVER STATE
c910f03c09k05 c910f03c09k04.pok.stglabs.ibm.com error
node-7912ac1-06vag36 c910f03c09k04.pok.stglabs.ibm.com error
NODE SERVER STATE
c910f03c09k04 c910f03c09k03.pok.stglabs.ibm.com connected
[root@c910f03c09k04 ~]# rm /var/lib/goconserver/*
rm: remove regular file ‘/var/lib/goconserver/nodes.json’? y
rm: remove regular file ‘/var/lib/goconserver/nodes.json.bak’? y
[root@c910f03c09k04 ~]# service xcatd restart
Restarting xcatd (via systemctl): [ OK ]
[root@c910f03c09k04 ~]# makegocons -q
NODE SERVER STATE
c910f03c09k05 c910f03c09k04.pok.stglabs.ibm.com error
node-7912ac1-06vag36 c910f03c09k04.pok.stglabs.ibm.com error
NODE SERVER STATE
c910f03c09k04 c910f03c09k03.pok.stglabs.ibm.com connected
```
Add `-q|--query [noderange]` for makegocons to list the console
status and the host server. If node is not registered in
goconserver, the status will be `unregistered`.
If console releated attribute is not defined for the specified
node but it is included in the noderange, error message for that
node will be printed at first.
- clear logs in the key components during provisioning (not only debug mode, but debug mode will have more logs)
- now only cover rhel7 stateful and stateless
- make more syslogs into cluster.log (tag = xcat or xcat.*)
- the changes will not impact other distro
Previously, it is impossible to know if the goconerver is started
by xcat. This patch add a marker in /etc/goconserver/server.conf
to help check the status. In addition, use server-cred.pem instead
of server-key.pem as it is not exist on SN.
This patch also control the service status of goconserver and conserver
when restarting the xcatd service on service node.
```
[root@sn02 ~]# chdef sn02 setupconserver=1
1 object definitions have been created or modified.
[root@sn02 ~]# service xcatd restart
Restarting xcatd (via systemctl): [ OK ]
[root@sn02 ~]# ps -ef | grep conserver
root 27679 1 0 02:26 ? 00:00:00 /usr/sbin/conserver -o -O1 -d
root 27680 27679 0 02:26 ? 00:00:00 /usr/sbin/conserver -o -O1 -d
root 27756 26188 0 02:26 pts/1 00:00:00 grep --color=auto conserver
[root@sn02 ~]# chdef sn02 setupconserver=2
1 object definitions have been created or modified.
[root@sn02 ~]# service xcatd restart
Restarting xcatd (via systemctl): [ OK ]
[root@sn02 ~]#
[root@sn02 ~]#
[root@sn02 ~]#
[root@sn02 ~]# ps -ef | grep conserver
root 27885 1 0 02:26 ? 00:00:00 /usr/bin/goconserver
root 27986 26188 0 02:33 pts/1 00:00:00 grep --color=auto conserver
```
This patch refactor the interface to get xcatmaster and tftpserver
attributes in the subvars subroutine to improve the performance.
partial-issue: #3958
* Fix#3428, set xcatmaster to facing IP in priority when the node is mananged by service node.
* Always using my facing IP first than site.master
* remove non-used variable sitemaster