hadong has uploaded a new change for review. Change subject: kdump:No need "service kdump propagate" to generate a key pair for ssh+sshkey ......................................................................
kdump:No need "service kdump propagate" to generate a key pair for ssh+sshkey Change-Id: I6e749d785485d7c6bd68dc126bd1c56cb7754338 Signed-off-by: hadong <[email protected]> --- M src/ovirt/node/config/defaults.py 1 file changed, 34 insertions(+), 17 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-node refs/changes/40/29940/1 diff --git a/src/ovirt/node/config/defaults.py b/src/ovirt/node/config/defaults.py index 01c21c3..293e76a 100644 --- a/src/ovirt/node/config/defaults.py +++ b/src/ovirt/node/config/defaults.py @@ -1107,7 +1107,8 @@ self.logger.warning("Failed to fetch SSH key: %s" % err_str) - os.mkdir("/tmp/kdump-ssh") + if not os.path.exists("/tmp/kdump-ssh"): + os.mkdir("/tmp/kdump-ssh") os.chmod("/tmp/kdump-ssh", 0600) with open("/tmp/kdump-ssh/id", "w") as f: f.write(buf.getvalue()) @@ -1118,9 +1119,23 @@ '/tmp/kdump-ssh/id', ssh, 'true'] utils.process.check_call(cmd) copy2("/tmp/kdump-ssh/id", "/root/.ssh/kdump_id_rsa") + conf = Config() + conf.persist("/root/.ssh/kdump_id_rsa") except utils.process.CalledProcessError as e: self.logger.warning("Failed to authenticate using SSH " "key: %s" % e) + + class RemoveSshKdumpConfig(utils.Transaction.Element): + title = "Removing kdump SSH config" + + def commit(self): + conf = Config() + for confpath in ("/root/.ssh/kdump_id_rsa.pub", + "/root/.ssh/kdump_id_rsa", + "/root/.ssh/known_hosts", + "/root/.ssh/config"): + conf.unpersist(confpath) + conf.delete(confpath) class CreateSshKdumpConfig(utils.Transaction.Element): title = "Creating kdump SSH config" @@ -1130,24 +1145,25 @@ okdump.write_kdump_config(ssh, "ssh") - kdumpctl_cmd = system.which("kdumpctl") - if kdumpctl_cmd: - cmd = [kdumpctl_cmd, "propagate"] - else: - cmd = ["service", "kdump", "propagate"] + if not ssh_key: + kdumpctl_cmd = system.which("kdumpctl") + if kdumpctl_cmd: + cmd = [kdumpctl_cmd, "propagate"] + else: + cmd = ["service", "kdump", "propagate"] - try: - utils.process.check_call(cmd) + try: + utils.process.check_call(cmd) - conf = Config() - for confpath in ("/root/.ssh/kdump_id_rsa.pub", - "/root/.ssh/kdump_id_rsa", - "/root/.ssh/known_hosts", - "/root/.ssh/config"): - conf.persist(confpath) - except utils.process.CalledProcessError as e: - self.logger.warning("Failed to activate KDump with " + - "SSH: %s" % e) + conf = Config() + for confpath in ("/root/.ssh/kdump_id_rsa.pub", + "/root/.ssh/kdump_id_rsa", + "/root/.ssh/known_hosts", + "/root/.ssh/config"): + conf.persist(confpath) + except utils.process.CalledProcessError as e: + self.logger.warning("Failed to activate KDump with " + + "SSH: %s" % e) class RemoveKdumpConfig(utils.Transaction.Element): title = "Removing kdump backup" @@ -1197,6 +1213,7 @@ if nfs: tx.append(CreateNfsKdumpConfig()) elif ssh: + tx.append(RemoveSshKdumpConfig()) if ssh_key: tx.append(PopulateSshKeys()) tx.append(CreateSshKdumpConfig()) -- To view, visit http://gerrit.ovirt.org/29940 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I6e749d785485d7c6bd68dc126bd1c56cb7754338 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-node Gerrit-Branch: master Gerrit-Owner: hadong <[email protected]> _______________________________________________ node-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/node-patches
