File tree 10 files changed +60
-22
lines changed
python/diff-nautobot-understack
10 files changed +60
-22
lines changed Original file line number Diff line number Diff line change 1
- from typing import Optional
2
-
3
1
import typer
4
2
from diffsync .diff import Diff
5
- from diff_nautobot_understack .project .main import (
6
- openstack_project_diff_from_nautobot_tenant ,
7
- )
3
+ from rich import print
4
+ from rich .console import Console
5
+ from rich .table import Table
6
+
8
7
from diff_nautobot_understack .network .main import (
9
8
openstack_network_diff_from_ucvni_network ,
10
9
)
10
+ from diff_nautobot_understack .project .main import (
11
+ openstack_project_diff_from_nautobot_tenant ,
12
+ )
11
13
from diff_nautobot_understack .settings import app_settings as settings
12
- from rich .console import Console
13
- from rich .table import Table
14
- from rich import print
15
14
16
15
app = typer .Typer (
17
16
name = "diff" ,
25
24
26
25
27
26
def display_output (
28
- diff_result : Diff , diff_output : str , output_format : Optional [ str ] = None
27
+ diff_result : Diff , diff_output : str , output_format : str | None = None
29
28
):
30
29
print (diff_result .summary ())
31
30
__output_format = (
Original file line number Diff line number Diff line change 1
- import requests
2
- import logging
3
1
import inspect
2
+ import logging
4
3
from urllib .parse import urljoin
5
4
5
+ import requests
6
+
6
7
from diff_nautobot_understack .settings import app_settings as settings
7
8
8
9
Original file line number Diff line number Diff line change 1
1
from diffsync import Adapter
2
- from diff_nautobot_understack .clients .openstack import API
3
2
3
+ from diff_nautobot_understack .clients .openstack import API
4
4
from diff_nautobot_understack .network import models
5
5
6
6
Original file line number Diff line number Diff line change 1
1
from diffsync import Adapter
2
2
from pydantic import BaseModel
3
- from diff_nautobot_understack .clients .nautobot import API
4
3
4
+ from diff_nautobot_understack .clients .nautobot import API
5
5
from diff_nautobot_understack .network import models
6
6
7
7
Original file line number Diff line number Diff line change 1
1
from diffsync .diff import Diff
2
2
from diffsync .enum import DiffSyncFlags
3
+
3
4
from diff_nautobot_understack .network .adapters .openstack_network import (
4
5
Network as OpenstackNetwork ,
5
6
)
Original file line number Diff line number Diff line change 1
1
import uuid
2
2
3
3
from diffsync import Adapter
4
- from diff_nautobot_understack .clients .nautobot import API
5
4
5
+ from diff_nautobot_understack .clients .nautobot import API
6
6
from diff_nautobot_understack .project import models
7
7
8
8
Original file line number Diff line number Diff line change 1
1
from diffsync import Adapter
2
- from diff_nautobot_understack .clients .openstack import API
3
2
3
+ from diff_nautobot_understack .clients .openstack import API
4
4
from diff_nautobot_understack .project import models
5
5
6
6
Original file line number Diff line number Diff line change 1
1
from diffsync .diff import Diff
2
2
from diffsync .enum import DiffSyncFlags
3
- from diff_nautobot_understack . project . adapters . openstack_project import Project
3
+
4
4
from diff_nautobot_understack .project .adapters .nautobot_tenant import Tenant
5
+ from diff_nautobot_understack .project .adapters .openstack_project import Project
5
6
from diff_nautobot_understack .settings import app_settings as settings
6
7
7
8
Original file line number Diff line number Diff line change 1
- from typing import Optional
2
-
3
- from pydantic_settings import BaseSettings , SettingsConfigDict
1
+ from pydantic_settings import BaseSettings
2
+ from pydantic_settings import SettingsConfigDict
4
3
5
4
6
5
class Settings (BaseSettings ):
7
6
model_config = SettingsConfigDict (env_file = "./.env" , env_file_encoding = "utf-8" )
8
7
9
- nautobot_api_token : Optional [ str ] = None
8
+ nautobot_api_token : str | None = None
10
9
nautobot_url : str = "https://nautobot.dev.undercloud.rackspace.net"
11
10
debug : bool = False
12
- os_cloud : Optional [ str ] = None
11
+ os_cloud : str | None = None
13
12
os_project : str = "default"
14
- os_client_config_file : Optional [ str ] = None
13
+ os_client_config_file : str | None = None
15
14
output_format : str = "table"
16
15
17
16
Original file line number Diff line number Diff line change @@ -14,6 +14,43 @@ diffsync = "^2.0.1"
14
14
typer = " ^0.15.1"
15
15
pydantic-settings = " ^2.7.1"
16
16
17
+ [tool .ruff ]
18
+ target-version = " py311"
19
+ fix = true
20
+
21
+ [tool .ruff .lint ]
22
+ select = [
23
+ " D" , # pydocstyle
24
+ " E" , # pycodestyle (error)
25
+ " F" , # pyflakes
26
+ " B" , # flake8-bugbear
27
+ " I" , # isort
28
+ " S" , # flake8-bandit
29
+ " UP" , # pyupgrade
30
+ " ASYNC" , # flake8-async
31
+ ]
32
+
33
+ ignore = [
34
+ " D100" , # don't require docs for every module
35
+ " D101" , # don't require docs for every class
36
+ " D102" , # don't require docs for every class method
37
+ " D103" , # don't require docs for every function
38
+ " D104" , # don't require docs for every package
39
+ " D106" , # don't require docs for every nested class
40
+ " D107" , # don't require docs for __init__
41
+ " D417" # don't require docs for every function parameter
42
+ ]
43
+
44
+ [tool .ruff .lint .isort ]
45
+ force-single-line = true
46
+
47
+ [tool .ruff .lint .pydocstyle ]
48
+ # enable the google doc style rules by default
49
+ convention = " google"
50
+
51
+ [tool .ruff .lint .per-file-ignores ]
52
+ "diff_nautobot_understack/cli.py" = [" D415" ]
53
+
17
54
[tool .poetry .scripts ]
18
55
uc-diff = " diff_nautobot_understack.cli:app"
19
56
You can’t perform that action at this time.
0 commit comments