mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 12:03:31 +01:00
build.lib.cmds.SSHClient: Finish __init_askpass()
Finish and test the __init_askpass() method, works. __init_askpass() had never been tested. Finish it and make sure it works. Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
f9fe1dbe51
commit
babf58e2dd
1 changed files with 5 additions and 7 deletions
|
|
@ -82,18 +82,16 @@ class SSHClientCmd(SSHClient): # export
|
||||||
|
|
||||||
def __init_askpass(self):
|
def __init_askpass(self):
|
||||||
if self.__askpass is None and self.password is not None:
|
if self.__askpass is None and self.password is not None:
|
||||||
import tempfile
|
import sys, tempfile
|
||||||
print(self.password)
|
|
||||||
raise Exception('Huhu')
|
|
||||||
prefix = os.path.basename(sys.argv[0]) + '-'
|
prefix = os.path.basename(sys.argv[0]) + '-'
|
||||||
f = NamedTemporaryFile(mode='w+t', prefix=prefix, delete=False)
|
f = tempfile.NamedTemporaryFile(mode='w+t', prefix=prefix, delete=False)
|
||||||
os.chmod(self.__askpass, 0o0700)
|
os.chmod(f.name, 0o0700)
|
||||||
self.__askpass = f.name
|
self.__askpass = f.name
|
||||||
f.write(f'#!/bin/bash\n\necho -n "{self.password}\n"')
|
f.write(f'#!/bin/bash\n\necho -n "{self.password}\n"')
|
||||||
f.close()
|
f.close()
|
||||||
for key, val in {'SSH_ASKPASS': self.__askpass, 'SSH_ASKPASS_REQUIRE': 'force'}:
|
for key, val in {'SSH_ASKPASS': self.__askpass, 'SSH_ASKPASS_REQUIRE': 'force'}.items():
|
||||||
self.__askpass_orig[key] = os.getenv(key)
|
self.__askpass_orig[key] = os.getenv(key)
|
||||||
os.setenv(key, val)
|
os.environ[key] = val
|
||||||
|
|
||||||
def run_cmd(self, cmd: str):
|
def run_cmd(self, cmd: str):
|
||||||
self.__init_askpass()
|
self.__init_askpass()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue