Thanks to visit codestin.com
Credit goes to github.com

Skip to content

SFTP plugin crashes when trying to write to log file on version 3.0.20 #2538

@ksurl

Description

@ksurl

Expected behaviour:

download file via sftp. previously on v3.0.12 and upgraded to v3.0.20

Actual behaviour:

task fails due to paramiko error while trying to write to log

Steps to reproduce:

  • Step 1: run flexget execute --tasks sync-series

Config:

variables: variables.yml

templates:

  global:
    no_entries_ok: yes

  anchors:
    _sftp_list: &sftp_list
      host: '{? sftp.host ?}'
      port: 22
      username: '{? sftp.username ?}'
      private_key: '{? sftp.private_key ?}'
      private_key_pass: '{? sftp.private_key_pass ?}'

  sync-series:
    sftp_list:
      <<: *sftp_list
      dirs:
        - '{? remote.downloads ?}/series/'    
    accept_all: yes
    sftp_download:
      to: '{? local.downloads ?}/series/'

Log:

(click to expand)
2019-12-21 07:19:35.480 CRITICAL plugin                        Exception while loading plugin flexget.components.ftp.sftp
Traceback (most recent call last):
  File "/home/USERNAME/.venv/flexget/bin/flexget", line 8, in <module>
    sys.exit(main())
    │   │    └ <function main at 0x7f7ba6ba4b70>
    │   └ <built-in function exit>
    └ <module 'sys' (built-in)>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/__init__.py", line 41, in main
    manager.start()
    │       └ <function Manager.start at 0x7f7ba2589ea0>
    └ <flexget.manager.Manager object at 0x7f7ba25d8710>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 389, in start
    self.initialize()
    │    └ <function Manager.initialize at 0x7f7ba2589c80>
    └ <flexget.manager.Manager object at 0x7f7ba25d8710>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 232, in initialize
    extra_components=[os.path.join(self.config_base, 'components')],
                      │  │    │    │    └ '/home/USERNAME/.config/flexget'
                      │  │    │    └ <flexget.manager.Manager object at 0x7f7ba25d8710>
                      │  │    └ <function join at 0x7f7ba6d27400>
                      │  └ <module 'posixpath' from '/usr/lib/python3.6/posixpath.py'>
                      └ <module 'os' from '/usr/lib/python3.6/os.py'>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 555, in load_plugins
    _load_components_from_dirs(extra_components)
    │                          └ ['/home/USERNAME/.config/flexget/components', '/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components']
    └ <function _load_components_from_dirs at 0x7f7ba2761378>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 496, in _load_components_from_dirs
    _import_plugin(package_name, component_path)
    │              │             └ PosixPath('/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py')
    │              └ 'flexget.components.ftp.sftp'
    └ <function _import_plugin at 0x7f7ba2761268>
> File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 425, in _import_plugin
    import_module(module_name)
    │             └ 'flexget.components.ftp.sftp'
    └ <function import_module at 0x7f7ba6c2f378>
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           │          │           │    │        │        └ 0
           │          │           │    │        └ None
           │          │           │    └ 0
           │          │           └ 'flexget.components.ftp.sftp'
           │          └ <function _gcd_import at 0x7f7ba6dfce18>
           └ <module 'importlib._bootstrap' (frozen)>
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 36, in <module>
    logging.getLogger("paramiko").setLevel(logging.ERROR)

NameError: name 'logging' is not defined
2019-12-21 07:19:37.304 CRITICAL plugin                        Exception while loading plugin flexget.components.ftp.sftp
Traceback (most recent call last):
  File "/home/USERNAME/.venv/flexget/bin/flexget", line 8, in <module>
    sys.exit(main())
    │   │    └ <function main at 0x7fa24eb50b70>
    │   └ <built-in function exit>
    └ <module 'sys' (built-in)>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/__init__.py", line 41, in main
    manager.start()
    │       └ <function Manager.start at 0x7fa24a535ea0>
    └ <flexget.manager.Manager object at 0x7fa24a584748>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 389, in start
    self.initialize()
    │    └ <function Manager.initialize at 0x7fa24a535c80>
    └ <flexget.manager.Manager object at 0x7fa24a584748>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 232, in initialize
    extra_components=[os.path.join(self.config_base, 'components')],
                      │  │    │    │    └ '/home/USERNAME/.config/flexget'
                      │  │    │    └ <flexget.manager.Manager object at 0x7fa24a584748>
                      │  │    └ <function join at 0x7fa24ecd3400>
                      │  └ <module 'posixpath' from '/usr/lib/python3.6/posixpath.py'>
                      └ <module 'os' from '/usr/lib/python3.6/os.py'>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 555, in load_plugins
    _load_components_from_dirs(extra_components)
    │                          └ ['/home/USERNAME/.config/flexget/components', '/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components']
    └ <function _load_components_from_dirs at 0x7fa24a70d378>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 496, in _load_components_from_dirs
    _import_plugin(package_name, component_path)
    │              │             └ PosixPath('/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py')
    │              └ 'flexget.components.ftp.sftp'
    └ <function _import_plugin at 0x7fa24a70d268>
> File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 425, in _import_plugin
    import_module(module_name)
    │             └ 'flexget.components.ftp.sftp'
    └ <function import_module at 0x7fa24ebdb378>
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           │          │           │    │        │        └ 0
           │          │           │    │        └ None
           │          │           │    └ 0
           │          │           └ 'flexget.components.ftp.sftp'
           │          └ <function _gcd_import at 0x7fa24eda8e18>
           └ <module 'importlib._bootstrap' (frozen)>
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 36, in <module>
    logging.getLogger("paramiko").setLevel(logging.ERROR)

NameError: name 'logging' is not defined
2019-12-21 07:19:39.278 CRITICAL plugin                        Exception while loading plugin flexget.components.ftp.sftp
Traceback (most recent call last):
  File "/home/USERNAME/.venv/flexget/bin/flexget", line 8, in <module>
    sys.exit(main())
    │   │    └ <function main at 0x7f14fd45eb70>
    │   └ <built-in function exit>
    └ <module 'sys' (built-in)>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/__init__.py", line 41, in main
    manager.start()
    │       └ <function Manager.start at 0x7f14f8e43ea0>
    └ <flexget.manager.Manager object at 0x7f14f8e92748>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 389, in start
    self.initialize()
    │    └ <function Manager.initialize at 0x7f14f8e43c80>
    └ <flexget.manager.Manager object at 0x7f14f8e92748>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 232, in initialize
    extra_components=[os.path.join(self.config_base, 'components')],
                      │  │    │    │    └ '/home/USERNAME/.config/flexget'
                      │  │    │    └ <flexget.manager.Manager object at 0x7f14f8e92748>
                      │  │    └ <function join at 0x7f14fd5e1400>
                      │  └ <module 'posixpath' from '/usr/lib/python3.6/posixpath.py'>
                      └ <module 'os' from '/usr/lib/python3.6/os.py'>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 555, in load_plugins
    _load_components_from_dirs(extra_components)
    │                          └ ['/home/USERNAME/.config/flexget/components', '/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components']
    └ <function _load_components_from_dirs at 0x7f14f901b378>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 496, in _load_components_from_dirs
    _import_plugin(package_name, component_path)
    │              │             └ PosixPath('/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py')
    │              └ 'flexget.components.ftp.sftp'
    └ <function _import_plugin at 0x7f14f901b268>
> File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 425, in _import_plugin
    import_module(module_name)
    │             └ 'flexget.components.ftp.sftp'
    └ <function import_module at 0x7f14fd4e9378>
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           │          │           │    │        │        └ 0
           │          │           │    │        └ None
           │          │           │    └ 0
           │          │           └ 'flexget.components.ftp.sftp'
           │          └ <function _gcd_import at 0x7f14fd6b6e18>
           └ <module 'importlib._bootstrap' (frozen)>
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 36, in <module>
    logging.getLogger("paramiko").setLevel(logging.ERROR)

NameError: name 'logging' is not defined
2019-12-21 07:19:41.309 CRITICAL plugin                        Exception while loading plugin flexget.components.ftp.sftp
Traceback (most recent call last):
  File "/home/USERNAME/.venv/flexget/bin/flexget", line 8, in <module>
    sys.exit(main())
    │   │    └ <function main at 0x7fda389b4b70>
    │   └ <built-in function exit>
    └ <module 'sys' (built-in)>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/__init__.py", line 41, in main
    manager.start()
    │       └ <function Manager.start at 0x7fda34399ea0>
    └ <flexget.manager.Manager object at 0x7fda343e8748>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 389, in start
    self.initialize()
    │    └ <function Manager.initialize at 0x7fda34399c80>
    └ <flexget.manager.Manager object at 0x7fda343e8748>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 232, in initialize
    extra_components=[os.path.join(self.config_base, 'components')],
                      │  │    │    │    └ '/home/USERNAME/.config/flexget'
                      │  │    │    └ <flexget.manager.Manager object at 0x7fda343e8748>
                      │  │    └ <function join at 0x7fda38b37400>
                      │  └ <module 'posixpath' from '/usr/lib/python3.6/posixpath.py'>
                      └ <module 'os' from '/usr/lib/python3.6/os.py'>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 555, in load_plugins
    _load_components_from_dirs(extra_components)
    │                          └ ['/home/USERNAME/.config/flexget/components', '/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components']
    └ <function _load_components_from_dirs at 0x7fda34571378>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 496, in _load_components_from_dirs
    _import_plugin(package_name, component_path)
    │              │             └ PosixPath('/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py')
    │              └ 'flexget.components.ftp.sftp'
    └ <function _import_plugin at 0x7fda34571268>
> File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 425, in _import_plugin
    import_module(module_name)
    │             └ 'flexget.components.ftp.sftp'
    └ <function import_module at 0x7fda38a3f378>
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           │          │           │    │        │        └ 0
           │          │           │    │        └ None
           │          │           │    └ 0
           │          │           └ 'flexget.components.ftp.sftp'
           │          └ <function _gcd_import at 0x7fda38c0ce18>
           └ <module 'importlib._bootstrap' (frozen)>
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 36, in <module>
    logging.getLogger("paramiko").setLevel(logging.ERROR)

NameError: name 'logging' is not defined
2019-12-21 07:19:43.283 CRITICAL plugin                        Exception while loading plugin flexget.components.ftp.sftp
Traceback (most recent call last):
  File "/home/USERNAME/.venv/flexget/bin/flexget", line 8, in <module>
    sys.exit(main())
    │   │    └ <function main at 0x7f408c122b70>
    │   └ <built-in function exit>
    └ <module 'sys' (built-in)>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/__init__.py", line 41, in main
    manager.start()
    │       └ <function Manager.start at 0x7f4087b07ea0>
    └ <flexget.manager.Manager object at 0x7f4087b56748>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 389, in start
    self.initialize()
    │    └ <function Manager.initialize at 0x7f4087b07c80>
    └ <flexget.manager.Manager object at 0x7f4087b56748>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 232, in initialize
    extra_components=[os.path.join(self.config_base, 'components')],
                      │  │    │    │    └ '/home/USERNAME/.config/flexget'
                      │  │    │    └ <flexget.manager.Manager object at 0x7f4087b56748>
                      │  │    └ <function join at 0x7f408c2a5400>
                      │  └ <module 'posixpath' from '/usr/lib/python3.6/posixpath.py'>
                      └ <module 'os' from '/usr/lib/python3.6/os.py'>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 555, in load_plugins
    _load_components_from_dirs(extra_components)
    │                          └ ['/home/USERNAME/.config/flexget/components', '/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components']
    └ <function _load_components_from_dirs at 0x7f4087cdf378>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 496, in _load_components_from_dirs
    _import_plugin(package_name, component_path)
    │              │             └ PosixPath('/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py')
    │              └ 'flexget.components.ftp.sftp'
    └ <function _import_plugin at 0x7f4087cdf268>
> File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 425, in _import_plugin
    import_module(module_name)
    │             └ 'flexget.components.ftp.sftp'
    └ <function import_module at 0x7f408c1ad378>
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           │          │           │    │        │        └ 0
           │          │           │    │        └ None
           │          │           │    └ 0
           │          │           └ 'flexget.components.ftp.sftp'
           │          └ <function _gcd_import at 0x7f408c37ae18>
           └ <module 'importlib._bootstrap' (frozen)>
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 36, in <module>
    logging.getLogger("paramiko").setLevel(logging.ERROR)

NameError: name 'logging' is not defined
2019-12-21 07:20:29.159 CRITICAL plugin                        Exception while loading plugin flexget.components.ftp.sftp
Traceback (most recent call last):
  File "/home/USERNAME/.venv/flexget/bin/flexget", line 8, in <module>
    sys.exit(main())
    │   │    └ <function main at 0x7f1ea7127b70>
    │   └ <built-in function exit>
    └ <module 'sys' (built-in)>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/__init__.py", line 41, in main
    manager.start()
    │       └ <function Manager.start at 0x7f1ea2b0eea0>
    └ <flexget.manager.Manager object at 0x7f1ea40fcc88>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 389, in start
    self.initialize()
    │    └ <function Manager.initialize at 0x7f1ea2b0ec80>
    └ <flexget.manager.Manager object at 0x7f1ea40fcc88>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/manager.py", line 232, in initialize
    extra_components=[os.path.join(self.config_base, 'components')],
                      │  │    │    │    └ '/home/USERNAME/.config/flexget'
                      │  │    │    └ <flexget.manager.Manager object at 0x7f1ea40fcc88>
                      │  │    └ <function join at 0x7f1ea72a8378>
                      │  └ <module 'posixpath' from '/usr/lib/python3.6/posixpath.py'>
                      └ <module 'os' from '/usr/lib/python3.6/os.py'>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 555, in load_plugins
    _load_components_from_dirs(extra_components)
    │                          └ ['/home/USERNAME/.config/flexget/components', '/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components']
    └ <function _load_components_from_dirs at 0x7f1ea2ce7378>
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 496, in _load_components_from_dirs
    _import_plugin(package_name, component_path)
    │              │             └ PosixPath('/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py')
    │              └ 'flexget.components.ftp.sftp'
    └ <function _import_plugin at 0x7f1ea2ce7268>
> File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/plugin.py", line 425, in _import_plugin
    import_module(module_name)
    │             └ 'flexget.components.ftp.sftp'
    └ <function import_module at 0x7f1ea71b2378>
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           │          │           │    │        │        └ 0
           │          │           │    │        └ None
           │          │           │    └ 0
           │          │           └ 'flexget.components.ftp.sftp'
           │          └ <function _gcd_import at 0x7f1ea7380e18>
           └ <module 'importlib._bootstrap' (frozen)>
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/USERNAME/.venv/flexget/lib/python3.6/site-packages/flexget/components/ftp/sftp.py", line 36, in <module>
    logging.getLogger("paramiko").setLevel(logging.ERROR)

NameError: name 'logging' is not defined

Additional information:

  • FlexGet version: 3.0.20
  • Python version: 3.6.8
  • Installation method: virtualenv
  • Using daemon (yes/no): yes
  • OS and version: Ubuntu 18.04.3 LTS
  • Link to crash log:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions