centra-sdk 0.1.55__tar.gz → 0.2.0.dev1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/PKG-INFO +6 -4
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/pyproject.toml +6 -5
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/dependencies.py +19 -17
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/main.py +4 -2
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/__init__.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/__init__.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/common/__init__.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/common/common.py +3 -3
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/common/inventory.py +10 -10
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/config/__init__.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/config/switches.py +1 -5
- centra_sdk-0.2.0.dev1/src/centra_sdk/models/connector/v1/consumer/__init__.py +3 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/consumer/agents.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/consumer/enforcement.py +13 -13
- centra_sdk-0.2.0.dev1/src/centra_sdk/models/connector/v1/k8s/__init__.py +3 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/k8s/k8s_inventory.py +13 -13
- centra_sdk-0.2.0.dev1/src/centra_sdk/models/connector/v1/operations/__init__.py +3 -0
- centra_sdk-0.2.0.dev1/src/centra_sdk/models/connector/v1/operations/aws/__init__.py +3 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/operations/aws/accounts.py +5 -5
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/operations/aws/flowlogs.py +5 -22
- centra_sdk-0.2.0.dev1/src/centra_sdk/models/connector/v1/operations/azure/__init__.py +3 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/operations/azure/setup.py +6 -14
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/operations/config.py +6 -6
- centra_sdk-0.2.0.dev1/src/centra_sdk/models/connector/v1/operations/gcp/__init__.py +3 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/operations/gcp/setup.py +5 -5
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/operations/health.py +9 -58
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/operations/info.py +2 -17
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/operations/log.py +3 -3
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/operations/onboard.py +10 -18
- centra_sdk-0.2.0.dev1/src/centra_sdk/models/connector/v1/provider/__init__.py +3 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/provider/inventory.py +5 -52
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/provider/lookup.py +3 -3
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/provider/networks.py +5 -22
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/provider/reveal.py +9 -9
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/provider/switch_observability.py +2 -17
- centra_sdk-0.2.0.dev1/src/centra_sdk/models/connector/v1/system_summary.py +48 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/version.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/account.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/agents.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/authentication.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/control.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/enforcement.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/flow_logs.py +3 -3
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/health.py +10 -14
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/info.py +6 -4
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/inventory.py +18 -12
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/logging.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/onboarding.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/operations.py +1 -1
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/routers/setup.py +5 -3
- centra_sdk-0.1.55/src/centra_sdk/routers/switches.py → centra_sdk-0.2.0.dev1/src/centra_sdk/routers/switch_observability.py +4 -4
- centra_sdk-0.1.55/src/centra_sdk/routers/switch_observability.py → centra_sdk-0.2.0.dev1/src/centra_sdk/routers/switches.py +1 -1
- centra_sdk-0.2.0.dev1/src/centra_sdk/routers/system_summary.py +49 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/handler_registry.py +1 -1
- centra_sdk-0.1.55/src/centra_sdk/models/connector/v1/consumer/__init__.py +0 -3
- centra_sdk-0.1.55/src/centra_sdk/models/connector/v1/k8s/__init__.py +0 -3
- centra_sdk-0.1.55/src/centra_sdk/models/connector/v1/operations/__init__.py +0 -3
- centra_sdk-0.1.55/src/centra_sdk/models/connector/v1/operations/aws/__init__.py +0 -3
- centra_sdk-0.1.55/src/centra_sdk/models/connector/v1/operations/azure/__init__.py +0 -3
- centra_sdk-0.1.55/src/centra_sdk/models/connector/v1/operations/gcp/__init__.py +0 -3
- centra_sdk-0.1.55/src/centra_sdk/models/connector/v1/provider/__init__.py +0 -3
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/README.md +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/__init__.py +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/auth.py +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/config_masking.py +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/context.py +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/gc_cli.py +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/gc_handler.py +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/gc_serializer.py +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/log_handling.py +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/option_values_handler.py +0 -0
- {centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/utils/sdk_version.py +0 -0
|
@@ -1,22 +1,24 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: centra-sdk
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2.0.dev1
|
|
4
4
|
Summary:
|
|
5
5
|
License: MIT
|
|
6
6
|
Author: ivasylenko
|
|
7
7
|
Author-email: ivasylen@akamai.com
|
|
8
|
-
Requires-Python: >=3.
|
|
8
|
+
Requires-Python: >=3.10,<3.15
|
|
9
9
|
Classifier: License :: OSI Approved :: MIT License
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
12
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
13
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
14
13
|
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
15
16
|
Requires-Dist: click (>=8.0.0,<8.2.0)
|
|
16
|
-
Requires-Dist: fastapi (>=0.120.1,<0.
|
|
17
|
+
Requires-Dist: fastapi (>=0.120.1,<0.141)
|
|
17
18
|
Requires-Dist: httpx (>=0.28.1)
|
|
18
19
|
Requires-Dist: pyjwt (>=2.10.1,<3.0.0)
|
|
19
20
|
Requires-Dist: rich (>=13.0.0)
|
|
21
|
+
Requires-Dist: starlette (>=1.3.1)
|
|
20
22
|
Project-URL: Homepage, https://github.com/guardicore/contracts
|
|
21
23
|
Project-URL: Repository, https://github.com/guardicore/contracts
|
|
22
24
|
Description-Content-Type: text/markdown
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "centra-sdk"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.2.0.dev1"
|
|
4
4
|
description = ""
|
|
5
5
|
authors = [
|
|
6
6
|
{name = "ivasylenko", email = "ivasylen@akamai.com"}
|
|
7
7
|
]
|
|
8
8
|
license = {text = "MIT"}
|
|
9
9
|
readme = "README.md"
|
|
10
|
-
requires-python = ">=3.
|
|
10
|
+
requires-python = ">=3.10,<3.15"
|
|
11
11
|
dependencies = [
|
|
12
|
-
"fastapi>=0.120.1,<0.
|
|
12
|
+
"fastapi>=0.120.1,<0.141",
|
|
13
|
+
"starlette>=1.3.1",
|
|
13
14
|
"pyjwt>=2.10.1,<3.0.0",
|
|
14
15
|
"click>=8.0.0,<8.2.0",
|
|
15
16
|
"rich>=13.0.0",
|
|
@@ -30,13 +31,13 @@ repository = "https://github.com/guardicore/contracts"
|
|
|
30
31
|
packages = [{include = "centra_sdk", from = "src"}]
|
|
31
32
|
|
|
32
33
|
[tool.poetry.dependencies]
|
|
33
|
-
python = ">=3.
|
|
34
|
+
python = ">=3.10,<3.15"
|
|
34
35
|
|
|
35
36
|
|
|
36
37
|
[tool.poetry.group.dev.dependencies]
|
|
37
38
|
pytest = "^8.4.1"
|
|
38
39
|
python-multipart = "^0.0.20"
|
|
39
|
-
fastapi-code-generator = {git = "https://github.com/guardicore/fastapi-code-generator.git", branch = "
|
|
40
|
+
fastapi-code-generator = {git = "https://github.com/guardicore/fastapi-code-generator.git", branch = "centra_contracts_v2"}
|
|
40
41
|
twine = "^5.0.0"
|
|
41
42
|
|
|
42
43
|
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
# generated by fastapi-codegen:
|
|
2
2
|
# filename: connector
|
|
3
|
-
# timestamp: 2026-07-
|
|
3
|
+
# timestamp: 2026-07-28T12:41:37+00:00
|
|
4
4
|
|
|
5
|
-
from
|
|
6
|
-
|
|
7
|
-
from typing import Optional, Union
|
|
5
|
+
from typing import List, Optional, Union
|
|
8
6
|
from uuid import UUID
|
|
9
7
|
|
|
8
|
+
from fastapi import Request
|
|
10
9
|
from pydantic import conint
|
|
11
|
-
from starlette.requests import Request
|
|
12
10
|
|
|
13
11
|
from centra_sdk.utils.gc_serializer import GcSerializer
|
|
14
12
|
|
|
15
|
-
from .models.connector.v1.common.inventory import InventoryItem
|
|
13
|
+
from .models.connector.v1.common.inventory import InventoryItem, Label
|
|
16
14
|
from .models.connector.v1.config.switches import SwitchesConfig
|
|
17
15
|
from .models.connector.v1.consumer.agents import AgentsInfo
|
|
18
16
|
from .models.connector.v1.consumer.enforcement import (
|
|
@@ -34,17 +32,18 @@ from .models.connector.v1.operations.aws.accounts import (
|
|
|
34
32
|
RegisteredOrganizationResponse,
|
|
35
33
|
)
|
|
36
34
|
from .models.connector.v1.operations.aws.flowlogs import (
|
|
35
|
+
BucketConfig,
|
|
37
36
|
FlowlogBucketMetadataErrorResponse,
|
|
38
37
|
FlowlogBucketMetadataResponse,
|
|
39
|
-
FlowlogConfig,
|
|
40
38
|
)
|
|
41
39
|
from .models.connector.v1.operations.azure.setup import (
|
|
42
40
|
Action,
|
|
43
41
|
Action7,
|
|
44
42
|
ScriptsRequest,
|
|
43
|
+
ServicePrincipalRequest,
|
|
45
44
|
ServicePrincipalSuccess,
|
|
45
|
+
ServicePrincipalValidationRequest,
|
|
46
46
|
V1OperationsAzureScriptsPostResponse,
|
|
47
|
-
V1OperationsAzureServicePrincipalPostRequest,
|
|
48
47
|
ValidationError,
|
|
49
48
|
)
|
|
50
49
|
from .models.connector.v1.operations.config import (
|
|
@@ -61,12 +60,12 @@ from .models.connector.v1.operations.gcp.setup import (
|
|
|
61
60
|
ServiceAccountValidationSuccess,
|
|
62
61
|
)
|
|
63
62
|
from .models.connector.v1.operations.health import (
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
63
|
+
ComponentFlags,
|
|
64
|
+
ComponentHealth,
|
|
65
|
+
ComponentMetrics,
|
|
67
66
|
)
|
|
68
67
|
from .models.connector.v1.operations.info import (
|
|
69
|
-
|
|
68
|
+
EnvUnit,
|
|
70
69
|
IntegrationEnvInfo,
|
|
71
70
|
IntegrationInfo,
|
|
72
71
|
)
|
|
@@ -77,17 +76,20 @@ from .models.connector.v1.operations.onboard import (
|
|
|
77
76
|
StatusResponse,
|
|
78
77
|
)
|
|
79
78
|
from .models.connector.v1.provider.inventory import (
|
|
80
|
-
Inventory,
|
|
81
79
|
InventoryAssetType,
|
|
82
80
|
InventoryReporterType,
|
|
83
|
-
|
|
84
|
-
NetworkTopology,
|
|
81
|
+
NetworkConnections,
|
|
85
82
|
V1ProviderInventoryIdAssetsAssetTypePostResponse,
|
|
86
83
|
V1ProviderInventoryIdAssetsAssetTypePostResponse1,
|
|
87
84
|
)
|
|
88
85
|
from .models.connector.v1.provider.lookup import LookupRequest
|
|
89
|
-
from .models.connector.v1.provider.networks import
|
|
90
|
-
|
|
86
|
+
from .models.connector.v1.provider.networks import (
|
|
87
|
+
AwsNetworkInfo,
|
|
88
|
+
AzureNetworkInfo,
|
|
89
|
+
GCPNetworkInfo,
|
|
90
|
+
)
|
|
91
|
+
from .models.connector.v1.provider.switch_observability import SwitchObservabilityItem
|
|
92
|
+
from .models.connector.v1.system_summary import SystemSummary
|
|
91
93
|
from .models.connector.version import (
|
|
92
94
|
BadRequestError,
|
|
93
95
|
LoginRequest,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# generated by fastapi-codegen:
|
|
2
2
|
# filename: connector
|
|
3
|
-
# timestamp: 2026-07-
|
|
3
|
+
# timestamp: 2026-07-28T12:41:37+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
@@ -26,6 +26,7 @@ from .routers import (
|
|
|
26
26
|
setup,
|
|
27
27
|
switch_observability,
|
|
28
28
|
switches,
|
|
29
|
+
system_summary,
|
|
29
30
|
)
|
|
30
31
|
|
|
31
32
|
|
|
@@ -62,5 +63,6 @@ app.include_router(logging.router)
|
|
|
62
63
|
app.include_router(onboarding.router)
|
|
63
64
|
app.include_router(operations.router)
|
|
64
65
|
app.include_router(setup.router)
|
|
65
|
-
app.include_router(switch_observability.router)
|
|
66
66
|
app.include_router(switches.router)
|
|
67
|
+
app.include_router(switch_observability.router)
|
|
68
|
+
app.include_router(system_summary.router)
|
{centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/common/common.py
RENAMED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# generated by fastapi-codegen:
|
|
2
2
|
# filename: /home/circleci/project/guardicore/connector
|
|
3
|
-
# timestamp: 2026-07-
|
|
3
|
+
# timestamp: 2026-07-28T12:41:37+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
|
-
from enum import
|
|
7
|
+
from enum import StrEnum
|
|
8
8
|
from typing import List, Optional
|
|
9
9
|
|
|
10
10
|
from pydantic import BaseModel, ConfigDict, Field
|
|
@@ -12,7 +12,7 @@ from pydantic import BaseModel, ConfigDict, Field
|
|
|
12
12
|
from centra_sdk.utils.gc_serializer import GcSerializer
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
class Connector(
|
|
15
|
+
class Connector(StrEnum):
|
|
16
16
|
CLOUD_AZURE = 'cloud_azure'
|
|
17
17
|
CLOUD_AWS = 'cloud_aws'
|
|
18
18
|
CLOUD_GCP = 'cloud_gcp'
|
{centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/common/inventory.py
RENAMED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# generated by fastapi-codegen:
|
|
2
2
|
# filename: /home/circleci/project/guardicore/connector
|
|
3
|
-
# timestamp: 2026-07-
|
|
3
|
+
# timestamp: 2026-07-28T12:41:37+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
|
-
from enum import
|
|
7
|
+
from enum import StrEnum
|
|
8
8
|
from typing import Any, Dict, List, Optional, Union
|
|
9
9
|
|
|
10
10
|
from pydantic import AwareDatetime, BaseModel, ConfigDict, Field
|
|
@@ -14,7 +14,7 @@ from centra_sdk.utils.gc_serializer import GcSerializer
|
|
|
14
14
|
from ..k8s.k8s_inventory import K8SData
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
class ItemType(
|
|
17
|
+
class ItemType(StrEnum):
|
|
18
18
|
ASSET = 'asset'
|
|
19
19
|
|
|
20
20
|
|
|
@@ -28,7 +28,7 @@ class Label(BaseModel, GcSerializer):
|
|
|
28
28
|
acls: Optional[str] = None
|
|
29
29
|
|
|
30
30
|
|
|
31
|
-
class AccessListMap(
|
|
31
|
+
class AccessListMap(StrEnum):
|
|
32
32
|
Y = 'Y'
|
|
33
33
|
N = 'N'
|
|
34
34
|
|
|
@@ -42,7 +42,7 @@ class AccessListMappingEntry(BaseModel, GcSerializer):
|
|
|
42
42
|
role: str = Field(..., description='device role name')
|
|
43
43
|
|
|
44
44
|
|
|
45
|
-
class Type(
|
|
45
|
+
class Type(StrEnum):
|
|
46
46
|
VM = 'VM'
|
|
47
47
|
|
|
48
48
|
|
|
@@ -160,23 +160,23 @@ class NetworkInterfaceData(BaseModel, GcSerializer):
|
|
|
160
160
|
vrf: Optional[str] = None
|
|
161
161
|
|
|
162
162
|
|
|
163
|
-
class OnlineStatus(
|
|
163
|
+
class OnlineStatus(StrEnum):
|
|
164
164
|
ONLINE = 'online'
|
|
165
165
|
OFFLINE = 'offline'
|
|
166
166
|
|
|
167
167
|
|
|
168
|
-
class PowerState(
|
|
168
|
+
class PowerState(StrEnum):
|
|
169
169
|
RUNNING = 'running'
|
|
170
170
|
STOPPED = 'stopped'
|
|
171
171
|
RESTARTING = 'restarting'
|
|
172
172
|
|
|
173
173
|
|
|
174
|
-
class RegistrationStatus(
|
|
174
|
+
class RegistrationStatus(StrEnum):
|
|
175
175
|
REGISTERED = 'registered'
|
|
176
176
|
UNREGISTERED = 'unregistered'
|
|
177
177
|
|
|
178
178
|
|
|
179
|
-
class Type1(
|
|
179
|
+
class Type1(StrEnum):
|
|
180
180
|
MS = 'MS'
|
|
181
181
|
|
|
182
182
|
|
|
@@ -215,7 +215,7 @@ class APISec(BaseModel, GcSerializer):
|
|
|
215
215
|
nn_url: Optional[str] = Field('', alias='nn-url')
|
|
216
216
|
|
|
217
217
|
|
|
218
|
-
class Type2(
|
|
218
|
+
class Type2(StrEnum):
|
|
219
219
|
IOT = 'IOT'
|
|
220
220
|
|
|
221
221
|
|
{centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/config/switches.py
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# generated by fastapi-codegen:
|
|
2
2
|
# filename: /home/circleci/project/guardicore/connector
|
|
3
|
-
# timestamp: 2026-07-
|
|
3
|
+
# timestamp: 2026-07-28T12:41:37+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
@@ -14,10 +14,6 @@ from ..common.inventory import SwitchInventoryItem
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
class Switches(RootModel[List[SwitchInventoryItem]]):
|
|
17
|
-
model_config = ConfigDict(
|
|
18
|
-
populate_by_name=True,
|
|
19
|
-
from_attributes=True,
|
|
20
|
-
)
|
|
21
17
|
root: List[SwitchInventoryItem] = Field(
|
|
22
18
|
..., description='List of switches for pagination compatibility'
|
|
23
19
|
)
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# generated by fastapi-codegen:
|
|
2
2
|
# filename: /home/circleci/project/guardicore/connector
|
|
3
|
-
# timestamp: 2026-07-
|
|
3
|
+
# timestamp: 2026-07-28T12:41:37+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
|
-
from enum import
|
|
8
|
-
from typing import List, Optional
|
|
7
|
+
from enum import IntEnum, StrEnum
|
|
8
|
+
from typing import Any, List, Optional
|
|
9
9
|
|
|
10
10
|
from pydantic import BaseModel, ConfigDict, Field
|
|
11
11
|
|
|
@@ -14,13 +14,13 @@ from centra_sdk.utils.gc_serializer import GcSerializer
|
|
|
14
14
|
from ..common.common import Connector
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
class ProjectState(
|
|
17
|
+
class ProjectState(StrEnum):
|
|
18
18
|
DRAFT = 'draft'
|
|
19
19
|
ALERT = 'alert'
|
|
20
20
|
BLOCK = 'block'
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
class ChainName(
|
|
23
|
+
class ChainName(StrEnum):
|
|
24
24
|
OVERRIDE_ALLOW = 'override-allow'
|
|
25
25
|
OVERRIDE_ALERT = 'override-alert'
|
|
26
26
|
OVERRIDE_BLOCK = 'override-block'
|
|
@@ -29,14 +29,14 @@ class ChainName(Enum):
|
|
|
29
29
|
BLOCK = 'block'
|
|
30
30
|
|
|
31
31
|
|
|
32
|
-
class Protocol(
|
|
32
|
+
class Protocol(StrEnum):
|
|
33
33
|
TCP = 'tcp'
|
|
34
34
|
UDP = 'udp'
|
|
35
35
|
ICMP = 'icmp'
|
|
36
36
|
ALL = 'all'
|
|
37
37
|
|
|
38
38
|
|
|
39
|
-
class Verdict(
|
|
39
|
+
class Verdict(StrEnum):
|
|
40
40
|
ALLOW = 'allow'
|
|
41
41
|
BLOCK = 'block'
|
|
42
42
|
|
|
@@ -86,7 +86,7 @@ class DomainGroupMatch(BaseModel, GcSerializer):
|
|
|
86
86
|
gname: str
|
|
87
87
|
|
|
88
88
|
|
|
89
|
-
class Ver(
|
|
89
|
+
class Ver(IntEnum):
|
|
90
90
|
INTEGER_4 = 4
|
|
91
91
|
INTEGER_6 = 6
|
|
92
92
|
|
|
@@ -110,12 +110,12 @@ class WinServiceMatch(BaseModel, GcSerializer):
|
|
|
110
110
|
service_image_names: Optional[List[str]] = Field(None, alias='service-image-names')
|
|
111
111
|
|
|
112
112
|
|
|
113
|
-
class AddressRange(
|
|
113
|
+
class AddressRange(StrEnum):
|
|
114
114
|
PRIVATE = 'Private'
|
|
115
115
|
INTERNET = 'Internet'
|
|
116
116
|
|
|
117
117
|
|
|
118
|
-
class Op(
|
|
118
|
+
class Op(StrEnum):
|
|
119
119
|
EQUALS = 'equals'
|
|
120
120
|
STARTS_WITH = 'starts-with'
|
|
121
121
|
ENDS_WITH = 'ends-with'
|
|
@@ -124,7 +124,7 @@ class Op(Enum):
|
|
|
124
124
|
REGEX = 'regex'
|
|
125
125
|
|
|
126
126
|
|
|
127
|
-
class CriterionType(
|
|
127
|
+
class CriterionType(StrEnum):
|
|
128
128
|
HOSTNAME = 'hostname'
|
|
129
129
|
SUBSCRIPTION = 'subscription'
|
|
130
130
|
VNET = 'vnet'
|
|
@@ -156,7 +156,7 @@ class DCInventoryItem(BaseModel, GcSerializer):
|
|
|
156
156
|
ip_addresses: Optional[List[str]] = Field(None, alias='ip-addresses')
|
|
157
157
|
|
|
158
158
|
|
|
159
|
-
class Action(
|
|
159
|
+
class Action(StrEnum):
|
|
160
160
|
SET = 'set'
|
|
161
161
|
UPDATE = 'update'
|
|
162
162
|
|
|
@@ -268,7 +268,7 @@ class EnforcementPolicyInventory(BaseModel, GcSerializer):
|
|
|
268
268
|
)
|
|
269
269
|
dc_inventory_revision: int = Field(..., alias='dc-inventory-revision')
|
|
270
270
|
policy_revision: int = Field(..., alias='policy-revision')
|
|
271
|
-
private_subnets: Optional[List] = Field(None, alias='private-subnets')
|
|
271
|
+
private_subnets: Optional[List[Any]] = Field(None, alias='private-subnets')
|
|
272
272
|
|
|
273
273
|
|
|
274
274
|
class PolicyChain(BaseModel, GcSerializer):
|
{centra_sdk-0.1.55 → centra_sdk-0.2.0.dev1}/src/centra_sdk/models/connector/v1/k8s/k8s_inventory.py
RENAMED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# generated by fastapi-codegen:
|
|
2
2
|
# filename: /home/circleci/project/guardicore/connector
|
|
3
|
-
# timestamp: 2026-07-
|
|
3
|
+
# timestamp: 2026-07-28T12:41:37+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
|
-
from enum import
|
|
7
|
+
from enum import StrEnum
|
|
8
8
|
from typing import Any, Dict, List, Optional, Union
|
|
9
9
|
|
|
10
10
|
from pydantic import BaseModel, ConfigDict, Field
|
|
@@ -12,7 +12,7 @@ from pydantic import BaseModel, ConfigDict, Field
|
|
|
12
12
|
from centra_sdk.utils.gc_serializer import GcSerializer
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
class Kind(
|
|
15
|
+
class Kind(StrEnum):
|
|
16
16
|
NAMESPACE = 'Namespace'
|
|
17
17
|
|
|
18
18
|
|
|
@@ -24,11 +24,11 @@ class K8SNamespaceSpec(BaseModel, GcSerializer):
|
|
|
24
24
|
kind: Kind
|
|
25
25
|
|
|
26
26
|
|
|
27
|
-
class Kind1(
|
|
27
|
+
class Kind1(StrEnum):
|
|
28
28
|
CONTROLLER = 'Controller'
|
|
29
29
|
|
|
30
30
|
|
|
31
|
-
class Type(
|
|
31
|
+
class Type(StrEnum):
|
|
32
32
|
UNKNOWN = 'Unknown'
|
|
33
33
|
REPLICA_SET = 'ReplicaSet'
|
|
34
34
|
DAEMON_SET = 'DaemonSet'
|
|
@@ -39,8 +39,8 @@ class Type(Enum):
|
|
|
39
39
|
REPLICATION_CONTROLLER = 'ReplicationController'
|
|
40
40
|
|
|
41
41
|
|
|
42
|
-
class Operator(
|
|
43
|
-
|
|
42
|
+
class Operator(StrEnum):
|
|
43
|
+
IN = 'In'
|
|
44
44
|
NOT_IN = 'NotIn'
|
|
45
45
|
EXISTS = 'Exists'
|
|
46
46
|
DOES_NOT_EXIST = 'DoesNotExist'
|
|
@@ -56,11 +56,11 @@ class KubernetesLabelSelectorRequirement(BaseModel, GcSerializer):
|
|
|
56
56
|
values: Optional[List[str]] = None
|
|
57
57
|
|
|
58
58
|
|
|
59
|
-
class Kind2(
|
|
59
|
+
class Kind2(StrEnum):
|
|
60
60
|
CLUSTER = 'Cluster'
|
|
61
61
|
|
|
62
62
|
|
|
63
|
-
class ClusterType(
|
|
63
|
+
class ClusterType(StrEnum):
|
|
64
64
|
AKS = 'AKS'
|
|
65
65
|
GKE = 'GKE'
|
|
66
66
|
EKS = 'EKS'
|
|
@@ -70,7 +70,7 @@ class ClusterType(Enum):
|
|
|
70
70
|
K8_S = 'K8S'
|
|
71
71
|
|
|
72
72
|
|
|
73
|
-
class CniType(
|
|
73
|
+
class CniType(StrEnum):
|
|
74
74
|
UNKNOWN = 'unknown'
|
|
75
75
|
CALICO = 'calico'
|
|
76
76
|
OVN = 'OVN'
|
|
@@ -91,7 +91,7 @@ class K8SClusterSpec(BaseModel, GcSerializer):
|
|
|
91
91
|
node_count: int
|
|
92
92
|
|
|
93
93
|
|
|
94
|
-
class Kind3(
|
|
94
|
+
class Kind3(StrEnum):
|
|
95
95
|
NODE = 'Node'
|
|
96
96
|
|
|
97
97
|
|
|
@@ -106,11 +106,11 @@ class K8SNodeSpec(BaseModel, GcSerializer):
|
|
|
106
106
|
bios_uuid: Optional[str] = None
|
|
107
107
|
|
|
108
108
|
|
|
109
|
-
class Kind4(
|
|
109
|
+
class Kind4(StrEnum):
|
|
110
110
|
SERVICES = 'Services'
|
|
111
111
|
|
|
112
112
|
|
|
113
|
-
class ServiceType(
|
|
113
|
+
class ServiceType(StrEnum):
|
|
114
114
|
UNKNOWN = 'Unknown'
|
|
115
115
|
EXTERNAL_NAME = 'ExternalName'
|
|
116
116
|
CLUSTER_IP = 'ClusterIP'
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# generated by fastapi-codegen:
|
|
2
2
|
# filename: /home/circleci/project/guardicore/connector
|
|
3
|
-
# timestamp: 2026-07-
|
|
3
|
+
# timestamp: 2026-07-28T12:41:37+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
|
-
from enum import
|
|
7
|
+
from enum import StrEnum
|
|
8
8
|
from typing import List, Optional
|
|
9
9
|
|
|
10
10
|
from pydantic import BaseModel, ConfigDict, Field
|
|
@@ -12,7 +12,7 @@ from pydantic import BaseModel, ConfigDict, Field
|
|
|
12
12
|
from centra_sdk.utils.gc_serializer import GcSerializer
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
class Action(
|
|
15
|
+
class Action(StrEnum):
|
|
16
16
|
REGISTER = 'register'
|
|
17
17
|
TEST = 'test'
|
|
18
18
|
|
|
@@ -113,12 +113,12 @@ class OrganizationRegistrationErrorResponse(BaseModel, GcSerializer):
|
|
|
113
113
|
)
|
|
114
114
|
|
|
115
115
|
|
|
116
|
-
class OperationMode(
|
|
116
|
+
class OperationMode(StrEnum):
|
|
117
117
|
REVEAL = 'reveal'
|
|
118
118
|
REVEAL_AND_ENFORCEMENT = 'reveal_and_enforcement'
|
|
119
119
|
|
|
120
120
|
|
|
121
|
-
class Scope(
|
|
121
|
+
class Scope(StrEnum):
|
|
122
122
|
ORG_UNITS = 'org_units'
|
|
123
123
|
ACCOUNTS = 'accounts'
|
|
124
124
|
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
# generated by fastapi-codegen:
|
|
2
2
|
# filename: /home/circleci/project/guardicore/connector
|
|
3
|
-
# timestamp: 2026-07-
|
|
3
|
+
# timestamp: 2026-07-28T12:41:37+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
|
-
from enum import
|
|
8
|
-
from typing import
|
|
7
|
+
from enum import StrEnum
|
|
8
|
+
from typing import Optional
|
|
9
9
|
|
|
10
|
-
from pydantic import BaseModel, ConfigDict, Field
|
|
10
|
+
from pydantic import BaseModel, ConfigDict, Field
|
|
11
11
|
|
|
12
12
|
from centra_sdk.utils.gc_serializer import GcSerializer
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
class FlowlogsPartition(
|
|
15
|
+
class FlowlogsPartition(StrEnum):
|
|
16
16
|
DAILY = 'daily'
|
|
17
17
|
HOURLY = 'hourly'
|
|
18
18
|
|
|
@@ -47,23 +47,6 @@ class BucketConfig(BaseModel, GcSerializer):
|
|
|
47
47
|
)
|
|
48
48
|
|
|
49
49
|
|
|
50
|
-
class FlowlogConfig(RootModel[List[BucketConfig]]):
|
|
51
|
-
model_config = ConfigDict(
|
|
52
|
-
populate_by_name=True,
|
|
53
|
-
from_attributes=True,
|
|
54
|
-
)
|
|
55
|
-
root: List[BucketConfig] = Field(
|
|
56
|
-
..., description='List of bucket flow log configurations', min_length=1
|
|
57
|
-
)
|
|
58
|
-
|
|
59
|
-
def __getattr__(self, attr: str):
|
|
60
|
-
return getattr(self.root, attr)
|
|
61
|
-
|
|
62
|
-
def __iter__(self):
|
|
63
|
-
for item in self.root:
|
|
64
|
-
yield item
|
|
65
|
-
|
|
66
|
-
|
|
67
50
|
class FlowlogBucketMetadataResponse(BaseModel, GcSerializer):
|
|
68
51
|
model_config = ConfigDict(
|
|
69
52
|
populate_by_name=True,
|