Ryan Barry has uploaded a new change for review. Change subject: Clear passwords when rhn_autoinstall exits ......................................................................
Clear passwords when rhn_autoinstall exits Register a function to clear passwords atexit if they're set, since something is holding/caching the values and re-writes them to /etc/default/ovirt unless we do this Also, stop using ovirtfunctions just for things we can easily pull from elsewhere. Change-Id: Ia84bdd8197b569cb21e99f34c64bc7a24c307993 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1062541 Signed-off-by: Ryan Barry <[email protected]> --- M plugins/rhn_autoinstall.py 1 file changed, 19 insertions(+), 12 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-node refs/changes/25/36225/1 diff --git a/plugins/rhn_autoinstall.py b/plugins/rhn_autoinstall.py index 42176d8..531678e 100644 --- a/plugins/rhn_autoinstall.py +++ b/plugins/rhn_autoinstall.py @@ -20,15 +20,18 @@ # also available at http://www.gnu.org/copyleft/gpl.html. from ovirt.node.utils.console import TransactionProgress -from ovirt.node.utils.fs import Config -from ovirt.node.setup.rhn import rhn_model -import ovirtnode.ovirtfunctions as _functions +from ovirt.node.config.defaults import NodeConfigFile +from ovirt.node.utils.fs import Config, File +from ovirt.node.setup.rhn.rhn_model import RHN from ovirt.node.plugins import Changeset +from ovirt.node.utils import system +import atexit RHSM_CONF = "/etc/rhsm/rhsm.conf" SYSTEMID = "/etc/sysconfig/rhn/systemid" +OVIRT_VARS = NodeConfigFile().get_dict() -args = _functions.get_cmdline_args() +args = system.kernel_cmdline_arguments() keys = ["rhn_type", "rhn_url", "rhn_ca_cert", "rhn_username", "rhn_profile", "rhn_activationkey", "rhn_org", "rhn_proxy", "rhn_proxyuser"] @@ -44,19 +47,26 @@ "rhn_proxyuser": "rhn.proxyuser", } +def clear_passwords(): + if "OVIRT_RHN_PASSWORD" in OVIRT_VARS or "OVIRT_RHN_PROXYPASSWORD" in OVIRT_VARS: + pw_keys = ("OVIRT_RHN_PASSWORD", "OVIRT_RHN_PROXYPASSWORD") + RHN().clear(keys=pw_keys) + changes = dict((keys_to_model[key], args[key]) for key in keys if key in args) + +atexit.register(clear_passwords) if __name__ == "__main__": cfg = Config() if cfg.exists(RHSM_CONF) or cfg.exists(SYSTEMID): # skip rerunning again exit() - rhn = rhn_model.RHN() + rhn = RHN() cfg = rhn.retrieve() - rhn_password = _functions.OVIRT_VARS["OVIRT_RHN_PASSWORD"] \ - if "OVIRT_RHN_PASSWORD" in _functions.OVIRT_VARS else "" - rhn_proxypassword = _functions.OVIRT_VARS["OVIRT_RHN_PROXYPASSWORD"] \ - if "OVIRT_RHN_PROXYPASSWORD" in _functions.OVIRT_VARS \ + rhn_password = OVIRT_VARS["OVIRT_RHN_PASSWORD"] \ + if "OVIRT_RHN_PASSWORD" in OVIRT_VARS else "" + rhn_proxypassword = OVIRT_VARS["OVIRT_RHN_PROXYPASSWORD"] \ + if "OVIRT_RHN_PROXYPASSWORD" in OVIRT_VARS \ else "" effective_model = Changeset({ "rhn.rhntype": cfg['rhntype'], @@ -76,6 +86,3 @@ tx = rhn.transaction(password=rhn_password, \ proxypass=rhn_proxypassword) TransactionProgress(tx, is_dry=False).run() - # remove /etc/default/ovirt entries from being persisted - pw_keys = ("OVIRT_RHN_PASSWORD", "OVIRT_RHN_PROXYPASSWORD") - rhn.clear(keys=pw_keys) -- To view, visit http://gerrit.ovirt.org/36225 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia84bdd8197b569cb21e99f34c64bc7a24c307993 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-node Gerrit-Branch: master Gerrit-Owner: Ryan Barry <[email protected]> _______________________________________________ node-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/node-patches
