Skip to content

TypeError: Secondary flag is not valid for non-boolean flag. #341

@CarlosSuporteISP

Description

@CarlosSuporteISP

Deployment Type

Docker

Version

v2.0.4

Steps to Reproduce

PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm

Server: Docker Engine - Community
Engine:
Version: 28.4.0

Client: Docker Engine - Community
Version: 28.4.0

Docker Compose version v2.39.4

mkdir /etc/hyperglass
cd /opt
git clone https://github.com/thatmattlove/hyperglass.git --depth=1
cd /opt/hyperglass

cp /opt/hyperglass/.samples/sample_devices.yaml /etc/hyperglass/devices.yaml
cd /opt/hyperglass
docker compose up

Expected Behavior

Standard system execution to test before starting, even with systemctl initialization, it still gives an error.
The IP and port for access should appear, but they don't.

Observed Behavior

hyperglass-1 | /usr/local/lib/python3.12/site-packages/paramiko/pkey.py:100: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from cryptography.hazmat.primitives.ciphers.algorithms in 48.0.0.
hyperglass-1 | "cipher": algorithms.TripleDES,
hyperglass-1 | /usr/local/lib/python3.12/site-packages/paramiko/transport.py:259: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from cryptography.hazmat.primitives.ciphers.algorithms in 48.0.0.
hyperglass-1 | "class": algorithms.TripleDES,
hyperglass-1 | ╭───────────────────── Traceback (most recent call last) ──────────────────────╮
hyperglass-1 | │ in _run_module_as_main:198 │
hyperglass-1 | │ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
hyperglass-1 | │ │ alter_argv = True │ │
hyperglass-1 | │ │ code = <code object at 0x7f14c7ef14d0, file │ │
hyperglass-1 | │ │ "/opt/hyperglass/hyperglass/console.py", line 1> │ │
hyperglass-1 | │ │ main_globals = { │ │
hyperglass-1 | │ │ │ 'name': 'main', │ │
hyperglass-1 | │ │ │ 'doc': 'hyperglass CLI management tool.', │ │
hyperglass-1 | │ │ │ 'package': 'hyperglass', │ │
hyperglass-1 | │ │ │ 'loader': │ │
hyperglass-1 | │ │ <_frozen_importlib_external.SourceFileLoader object at │ │
hyperglass-1 | │ │ 0x7f14c7f44f80>, │ │
hyperglass-1 | │ │ │ 'spec': ModuleSpec(name='hyperglass.console', │ │
hyperglass-1 | │ │ loader=<_frozen_importlib_external.SourceFileLoader │ │
hyperglass-1 | │ │ object at 0x7f14c7f44f80>, │ │
hyperglass-1 | │ │ origin='/opt/hyperglass/hyperglass/console.py'), │ │
hyperglass-1 | │ │ │ 'annotations': {}, │ │
hyperglass-1 | │ │ │ 'builtins': <module 'builtins' (built-in)>, │ │
hyperglass-1 | │ │ │ 'file': '/opt/hyperglass/hyperglass/console.py', │ │
hyperglass-1 | │ │ │ 'cached': │ │
hyperglass-1 | │ │ '/opt/hyperglass/hyperglass/pycache/console.cpython-… │ │
hyperglass-1 | │ │ │ 'run': <function run at 0x7f14c7f039c0> │ │
hyperglass-1 | │ │ } │ │
hyperglass-1 | │ │ mod_name = 'hyperglass.console' │ │
hyperglass-1 | │ │ mod_spec = ModuleSpec(name='hyperglass.console', │ │
hyperglass-1 | │ │ loader=<_frozen_importlib_external.SourceFileLoader │ │
hyperglass-1 | │ │ object at 0x7f14c7f44f80>, │ │
hyperglass-1 | │ │ origin='/opt/hyperglass/hyperglass/console.py') │ │
hyperglass-1 | │ ╰──────────────────────────────────────────────────────────────────────────╯ │
hyperglass-1 | │ in _run_code:88 │
hyperglass-1 | │ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
hyperglass-1 | │ │ cached = '/opt/hyperglass/hyperglass/pycache/console.cpython-… │ │
hyperglass-1 | │ │ code = <code object at 0x7f14c7ef14d0, file │ │
hyperglass-1 | │ │ "/opt/hyperglass/hyperglass/console.py", line 1> │ │
hyperglass-1 | │ │ fname = '/opt/hyperglass/hyperglass/console.py' │ │
hyperglass-1 | │ │ init_globals = None │ │
hyperglass-1 | │ │ loader = <_frozen_importlib_external.SourceFileLoader object at │ │
hyperglass-1 | │ │ 0x7f14c7f44f80> │ │
hyperglass-1 | │ │ mod_name = 'main' │ │
hyperglass-1 | │ │ mod_spec = ModuleSpec(name='hyperglass.console', │ │
hyperglass-1 | │ │ loader=<_frozen_importlib_external.SourceFileLoader │ │
hyperglass-1 | │ │ object at 0x7f14c7f44f80>, │ │
hyperglass-1 | │ │ origin='/opt/hyperglass/hyperglass/console.py') │ │
hyperglass-1 | │ │ pkg_name = 'hyperglass' │ │
hyperglass-1 | │ │ run_globals = { │ │
hyperglass-1 | │ │ │ 'name': 'main', │ │
hyperglass-1 | │ │ │ 'doc': 'hyperglass CLI management tool.', │ │
hyperglass-1 | │ │ │ 'package': 'hyperglass', │ │
hyperglass-1 | │ │ │ 'loader': │ │
hyperglass-1 | │ │ <_frozen_importlib_external.SourceFileLoader object at │ │
hyperglass-1 | │ │ 0x7f14c7f44f80>, │ │
hyperglass-1 | │ │ │ 'spec': ModuleSpec(name='hyperglass.console', │ │
hyperglass-1 | │ │ loader=<_frozen_importlib_external.SourceFileLoader │ │
hyperglass-1 | │ │ object at 0x7f14c7f44f80>, │ │
hyperglass-1 | │ │ origin='/opt/hyperglass/hyperglass/console.py'), │ │
hyperglass-1 | │ │ │ 'annotations': {}, │ │
hyperglass-1 | │ │ │ 'builtins': <module 'builtins' (built-in)>, │ │
hyperglass-1 | │ │ │ 'file': '/opt/hyperglass/hyperglass/console.py', │ │
hyperglass-1 | │ │ │ 'cached': │ │
hyperglass-1 | │ │ '/opt/hyperglass/hyperglass/pycache/console.cpython-… │ │
hyperglass-1 | │ │ │ 'run': <function run at 0x7f14c7f039c0> │ │
hyperglass-1 | │ │ } │ │
hyperglass-1 | │ │ script_name = None │ │
hyperglass-1 | │ ╰──────────────────────────────────────────────────────────────────────────╯ │
hyperglass-1 | │ │
hyperglass-1 | │ /opt/hyperglass/hyperglass/console.py:8 in │
hyperglass-1 | │ │
hyperglass-1 | │ 5 from .cli import run │
hyperglass-1 | │ 6 │
hyperglass-1 | │ 7 if name == "main": │
hyperglass-1 | │ ❱ 8 │ run() │
hyperglass-1 | │ 9 │
hyperglass-1 | │ │
hyperglass-1 | │ /opt/hyperglass/hyperglass/cli/main.py:29 in run │
hyperglass-1 | │ │
hyperglass-1 | │ 26 │
hyperglass-1 | │ 27 def run(): │
hyperglass-1 | │ 28 │ """Run the hyperglass CLI.""" │
hyperglass-1 | │ ❱ 29 │ return typer.run(cli()) │
hyperglass-1 | │ 30 │
hyperglass-1 | │ 31 │
hyperglass-1 | │ 32 @cli.callback(name="version") │
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/typer/main.py:328 in call
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/typer/main.py:311 in call
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/typer/main.py:350 in get_command │
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/typer/main.py:332 in get_group │
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/typer/main.py:483 in │
hyperglass-1 | │ get_group_from_info │
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/typer/main.py:577 in │
hyperglass-1 | │ get_command_from_info │
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/typer/main.py:553 in │
hyperglass-1 | │ get_params_convertors_ctx_param_name_from_function │
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/typer/main.py:877 in get_click_param │
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/typer/core.py:498 in init
hyperglass-1 | │ │
hyperglass-1 | │ /usr/local/lib/python3.12/site-packages/click/core.py:2793 in init
hyperglass-1 | ╰──────────────────────────────────────────────────────────────────────────────╯
hyperglass-1 | TypeError: Secondary flag is not valid for non-boolean flag.
hyperglass-1 exited with code 1

Configuration

org_name: MyOrg
site_title: "MyOrg Looking Glass"
site_description: "MyOrg Looking Glass"
request_timeout: 300
logging:
  directory: /var/log/hyperglass/
messages:
    general: The test did not complete successfully
    request_timeout: The test did not complete successfully.

Devices

routers:
  - name: myrouter.net
    address: w.x.y.z
    credential:
      username: username
      password: pass
    port: 22
    platform: junos
    attrs:
      source4: e.f.g.h
      source6: "JJ:KK:LL::NN"

Logs

hyperglass-1  | /usr/local/lib/python3.12/site-packages/paramiko/pkey.py:100: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from cryptography.hazmat.primitives.ciphers.algorithms in 48.0.0.
hyperglass-1  |   "cipher": algorithms.TripleDES,
hyperglass-1  | /usr/local/lib/python3.12/site-packages/paramiko/transport.py:259: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from cryptography.hazmat.primitives.ciphers.algorithms in 48.0.0.
hyperglass-1  |   "class": algorithms.TripleDES,
hyperglass-1  | ╭───────────────────── Traceback (most recent call last) ──────────────────────╮
hyperglass-1  | │ in _run_module_as_main:198                                                   │
hyperglass-1  | │ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
hyperglass-1  | │ │   alter_argv = True                                                      │ │
hyperglass-1  | │ │         code = <code object <module> at 0x7f14c7ef14d0, file             │ │
hyperglass-1  | │ │                "/opt/hyperglass/hyperglass/console.py", line 1>          │ │
hyperglass-1  | │ │ main_globals = {                                                         │ │
hyperglass-1  | │ │                │   '__name__': '__main__',                               │ │
hyperglass-1  | │ │                │   '__doc__': 'hyperglass CLI management tool.',         │ │
hyperglass-1  | │ │                │   '__package__': 'hyperglass',                          │ │
hyperglass-1  | │ │                │   '__loader__':                                         │ │
hyperglass-1  | │ │                <_frozen_importlib_external.SourceFileLoader object at    │ │
hyperglass-1  | │ │                0x7f14c7f44f80>,                                          │ │
hyperglass-1  | │ │                │   '__spec__': ModuleSpec(name='hyperglass.console',     │ │
hyperglass-1  | │ │                loader=<_frozen_importlib_external.SourceFileLoader       │ │
hyperglass-1  | │ │                object at 0x7f14c7f44f80>,                                │ │
hyperglass-1  | │ │                origin='/opt/hyperglass/hyperglass/console.py'),          │ │
hyperglass-1  | │ │                │   '__annotations__': {},                                │ │
hyperglass-1  | │ │                │   '__builtins__': <module 'builtins' (built-in)>,       │ │
hyperglass-1  | │ │                │   '__file__': '/opt/hyperglass/hyperglass/console.py',  │ │
hyperglass-1  | │ │                │   '__cached__':                                         │ │
hyperglass-1  | │ │                '/opt/hyperglass/hyperglass/__pycache__/console.cpython-… │ │
hyperglass-1  | │ │                │   'run': <function run at 0x7f14c7f039c0>               │ │
hyperglass-1  | │ │                }                                                         │ │
hyperglass-1  | │ │     mod_name = 'hyperglass.console'                                      │ │
hyperglass-1  | │ │     mod_spec = ModuleSpec(name='hyperglass.console',                     │ │
hyperglass-1  | │ │                loader=<_frozen_importlib_external.SourceFileLoader       │ │
hyperglass-1  | │ │                object at 0x7f14c7f44f80>,                                │ │
hyperglass-1  | │ │                origin='/opt/hyperglass/hyperglass/console.py')           │ │
hyperglass-1  | │ ╰──────────────────────────────────────────────────────────────────────────╯ │
hyperglass-1  | │ in _run_code:88                                                              │
hyperglass-1  | │ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
hyperglass-1  | │ │       cached = '/opt/hyperglass/hyperglass/__pycache__/console.cpython-… │ │
hyperglass-1  | │ │         code = <code object <module> at 0x7f14c7ef14d0, file             │ │
hyperglass-1  | │ │                "/opt/hyperglass/hyperglass/console.py", line 1>          │ │
hyperglass-1  | │ │        fname = '/opt/hyperglass/hyperglass/console.py'                   │ │
hyperglass-1  | │ │ init_globals = None                                                      │ │
hyperglass-1  | │ │       loader = <_frozen_importlib_external.SourceFileLoader object at    │ │
hyperglass-1  | │ │                0x7f14c7f44f80>                                           │ │
hyperglass-1  | │ │     mod_name = '__main__'                                                │ │
hyperglass-1  | │ │     mod_spec = ModuleSpec(name='hyperglass.console',                     │ │
hyperglass-1  | │ │                loader=<_frozen_importlib_external.SourceFileLoader       │ │
hyperglass-1  | │ │                object at 0x7f14c7f44f80>,                                │ │
hyperglass-1  | │ │                origin='/opt/hyperglass/hyperglass/console.py')           │ │
hyperglass-1  | │ │     pkg_name = 'hyperglass'                                              │ │
hyperglass-1  | │ │  run_globals = {                                                         │ │
hyperglass-1  | │ │                │   '__name__': '__main__',                               │ │
hyperglass-1  | │ │                │   '__doc__': 'hyperglass CLI management tool.',         │ │
hyperglass-1  | │ │                │   '__package__': 'hyperglass',                          │ │
hyperglass-1  | │ │                │   '__loader__':                                         │ │
hyperglass-1  | │ │                <_frozen_importlib_external.SourceFileLoader object at    │ │
hyperglass-1  | │ │                0x7f14c7f44f80>,                                          │ │
hyperglass-1  | │ │                │   '__spec__': ModuleSpec(name='hyperglass.console',     │ │
hyperglass-1  | │ │                loader=<_frozen_importlib_external.SourceFileLoader       │ │
hyperglass-1  | │ │                object at 0x7f14c7f44f80>,                                │ │
hyperglass-1  | │ │                origin='/opt/hyperglass/hyperglass/console.py'),          │ │
hyperglass-1  | │ │                │   '__annotations__': {},                                │ │
hyperglass-1  | │ │                │   '__builtins__': <module 'builtins' (built-in)>,       │ │
hyperglass-1  | │ │                │   '__file__': '/opt/hyperglass/hyperglass/console.py',  │ │
hyperglass-1  | │ │                │   '__cached__':                                         │ │
hyperglass-1  | │ │                '/opt/hyperglass/hyperglass/__pycache__/console.cpython-… │ │
hyperglass-1  | │ │                │   'run': <function run at 0x7f14c7f039c0>               │ │
hyperglass-1  | │ │                }                                                         │ │
hyperglass-1  | │ │  script_name = None                                                      │ │
hyperglass-1  | │ ╰──────────────────────────────────────────────────────────────────────────╯ │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /opt/hyperglass/hyperglass/console.py:8 in <module>                          │
hyperglass-1  | │                                                                              │
hyperglass-1  | │   5 from .cli import run                                                     │
hyperglass-1  | │   6                                                                          │
hyperglass-1  | │   7 if __name__ == "__main__":                                               │
hyperglass-1  | │ ❱ 8 │   run()                                                                │
hyperglass-1  | │   9                                                                          │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /opt/hyperglass/hyperglass/cli/main.py:29 in run                             │
hyperglass-1  | │                                                                              │
hyperglass-1  | │    26                                                                        │
hyperglass-1  | │    27 def run():                                                             │
hyperglass-1  | │    28 │   """Run the hyperglass CLI."""                                      │
hyperglass-1  | │ ❱  29 │   return typer.run(cli())                                            │
hyperglass-1  | │    30                                                                        │
hyperglass-1  | │    31                                                                        │
hyperglass-1  | │    32 @cli.callback(name="version")                                          │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/typer/main.py:328 in __call__        │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/typer/main.py:311 in __call__        │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/typer/main.py:350 in get_command     │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/typer/main.py:332 in get_group       │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/typer/main.py:483 in                 │
hyperglass-1  | │ get_group_from_info                                                          │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/typer/main.py:577 in                 │
hyperglass-1  | │ get_command_from_info                                                        │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/typer/main.py:553 in                 │
hyperglass-1  | │ get_params_convertors_ctx_param_name_from_function                           │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/typer/main.py:877 in get_click_param │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/typer/core.py:498 in __init__        │
hyperglass-1  | │                                                                              │
hyperglass-1  | │ /usr/local/lib/python3.12/site-packages/click/core.py:2793 in __init__       │
hyperglass-1  | ╰──────────────────────────────────────────────────────────────────────────────╯
hyperglass-1  | TypeError: Secondary flag is not valid for non-boolean flag.
hyperglass-1 exited with code 1

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions