summaryrefslogtreecommitdiff
path: root/python/vyos
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2023-11-26 20:54:02 +0100
committerGitHub <noreply@github.com>2023-11-26 20:54:02 +0100
commitc64a8a4da7dba72a42493a58e3ce235c65b258e8 (patch)
tree6ef62312ea1b40302bd40514b23645560d90ba06 /python/vyos
parent6afd6eeb87a3a4ecbbd5aa9c67622d0b3c27721c (diff)
parent63bbd1afdd21563cf673ee34b47156889bd5e349 (diff)
downloadvyos-1x-c64a8a4da7dba72a42493a58e3ce235c65b258e8.tar.gz
vyos-1x-c64a8a4da7dba72a42493a58e3ce235c65b258e8.zip
Merge pull request #2541 from erkin/commit-fix
remote: T5773: Fix for broken config download
Diffstat (limited to 'python/vyos')
-rw-r--r--python/vyos/remote.py30
1 files changed, 13 insertions, 17 deletions
diff --git a/python/vyos/remote.py b/python/vyos/remote.py
index 8b90e4530..8928cce67 100644
--- a/python/vyos/remote.py
+++ b/python/vyos/remote.py
@@ -46,17 +46,6 @@ from vyos.version import get_version
CHUNK_SIZE = 8192
-@contextmanager
-def umask(mask: int):
- """
- Context manager that temporarily sets the process umask.
- """
- oldmask = os.umask(mask)
- try:
- yield
- finally:
- os.umask(oldmask)
-
class InteractivePolicy(MissingHostKeyPolicy):
"""
Paramiko policy for interactively querying the user on whether to proceed
@@ -88,6 +77,17 @@ class SourceAdapter(HTTPAdapter):
num_pools=connections, maxsize=maxsize,
block=block, source_address=self._source_pair)
+@contextmanager
+def umask(mask: int):
+ """
+ Context manager that temporarily sets the process umask.
+ """
+ import os
+ oldmask = os.umask(mask)
+ try:
+ yield
+ finally:
+ os.umask(oldmask)
def check_storage(path, size):
"""
@@ -436,26 +436,22 @@ def urlc(urlstring, *args, **kwargs):
except KeyError:
raise ValueError(f'Unsupported URL scheme: "{scheme}"')
-def download(local_path, urlstring, progressbar=False, raise_error=False, check_space=False,
+def download(local_path, urlstring, progressbar=False, check_space=False,
source_host='', source_port=0, timeout=10.0):
try:
progressbar = progressbar and is_interactive()
urlc(urlstring, progressbar, check_space, source_host, source_port, timeout).download(local_path)
except Exception as err:
- if raise_error:
- raise
print_error(f'Unable to download "{urlstring}": {err}')
except KeyboardInterrupt:
print_error('\nDownload aborted by user.')
-def upload(local_path, urlstring, progressbar=False, raise_error=False,
+def upload(local_path, urlstring, progressbar=False,
source_host='', source_port=0, timeout=10.0):
try:
progressbar = progressbar and is_interactive()
urlc(urlstring, progressbar, source_host, source_port, timeout).upload(local_path)
except Exception as err:
- if raise_error:
- raise
print_error(f'Unable to upload "{urlstring}": {err}')
except KeyboardInterrupt:
print_error('\nUpload aborted by user.')